За последние 24 часа нас посетили 72524 программиста и 1650 роботов. Сейчас ищут 873 программиста ...

Добавление сообщений ajax

Тема в разделе "PHP для новичков", создана пользователем Miracleon, 6 апр 2021.

Метки:
  1. Miracleon

    Miracleon Новичок

    С нами с:
    9 мар 2020
    Сообщения:
    25
    Симпатии:
    0
    Почему добавляется только одно сообщение, а при повторном нажатии на кнопку оно просто перезаписывается?
    PHP:
    1. <?
    2. if(isset($_POST)){
    3.           $data=date("d-m-y");
    4.           $name=mysqli_real_escape_string($con,$poluchatel);
    5.           $poluchatel=mysqli_real_escape_string($con,$poluchatel);
    6.           $textarea=mysqli_real_escape_string($con,$textarea);                
    7.           $query_2="Insert into mess(author, poluchatel, mess, data)VALUES('{$_SESSION['id']}', '$poluchatel', '$mess', '$data')";
    8.           $result_2=mysqli_query($con,$query_2) or die (mysqli_error($con));                      
    9. }
    10. ?>
    11. <div class="mess">
    12.             <div>
    13.               <div class="text">   <?=$data?></div>
    14.             </div>
    15.             <div class="flex-shrink">
    16.               <div class="font-weight-bold mb-1" ><?=name ?></div>
    17.              <?=$textarea?>
    18.             </div>
    19.           </div>
     
  2. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.859
    Симпатии:
    656
    Потому что автоинкрементального поля нема.
    --- Добавлено ---
    Что за хрень у вас с извлечением входных параметров? Совсем не бум-бум что ли?
     
    BAbl_gun нравится это.
  3. Miracleon

    Miracleon Новичок

    С нами с:
    9 мар 2020
    Сообщения:
    25
    Симпатии:
    0
    upload_2021-4-6_17-29-9.png После обновления страницы, сообщения появляются, при отправке ajax появляется только одно и если отправить ещё сообщение то оно просто перезапишется, а не добавится ниже
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    покажите как ajax отправляете и ответ принимаете? наверняка через html() выводите - вот и перезаписывается
     
  5. Miracleon

    Miracleon Новичок

    С нами с:
    9 мар 2020
    Сообщения:
    25
    Симпатии:
    0
    Вывожу вот так <div id=inform></div>
    Код (Javascript):
    1.    $("#submit").click(function(event){
    2.        event.preventDefault();
    3.        var author=$("#author").val();
    4.        var poluchatel=$("#poluchatel").val();
    5.        var textarea=$("#textarea").val();
    6.      
    7.        $.ajax({
    8.           type:"post",
    9.           url:"action_messages.php",
    10.           data:{
    11.               author:author,
    12.               poluchatel:poluchatel,
    13.               textarea:textarea        
    14.           },
    15.           success:function(data){
    16.              $("#inform").html(data);
    17.           }
    18.        });
    19.    });
     
  6. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    Ну, как и думал
    html() заменяет!
    Попробуйте append(), after(), before() смотря куда добавлять хотите, в начало или в конец
    Либо в ответе в скрипте php формируйте не одну запись, а весь список
     
    Miracleon нравится это.