2014-02-02 5 views
0

Я даю пользователю возможность комментировать, когда он комментирует, я бы хотел, чтобы этот комментарий сохранялся в моей базе данных. Я позабочусь о сохранении в части базы данных, но мне нужна помощь в передаче текстового ввода с JavaScript на PHP. Я хотел бы просто повторить переменные «imeBoxa» и «komentar». Моя проблема находится внутри функции ajax.Передача переменной с JavaScript на PHP с использованием Ajax

HTML в index.php:

<button class="pointer comment">Komentiraj</button> 

<script type="text/x-jquery-tmpl" id="fieldTemplate2"/> 
<p><div class="imeBoxa"><b>{{imeBoxa}}</b>:</div> {{komentar}}</p> 
<hr/> 
</script> 

JavaScript:

$("#leftColumn").on("click", ".comment",function() 
    { 
     var imeBoxa = prompt("Komentar za vijest:",""); 
     var komentar = prompt("Komentar",""); 

     if(komentar != null && imeBoxa != null) 
     { 
      var fieldTemplate2 = $("#fieldTemplate2").text(); 

      fieldTemplate2 = fieldTemplate2.replace("{{imeBoxa}}", imeBoxa); 
      fieldTemplate2 = fieldTemplate2.replace("{{komentar}}", komentar); 

      $.ajax 
      ({ 
       type: 'post', 
       url: 'index.php', 
       data: 
       { 
        imeBoxa, 
        komentar 
       }, 
       success: function(data) 
       { 
        console.log(data); 
       } 
      }) 

      var jField = $(fieldTemplate2); 

      $(".komentari").append(jField); 
     } 
    }); 

ответ

1

У вас есть синтаксические ошибки в коде. AJAX вызов должен выглядеть следующим образом:

$.ajax({ 
    type: 'post', 
    url: 'index.php', 
    data: { 
     imeBoxa: imeBoxa, 
     komentar: komentar 
    }, 
    success: function (data) { 
     console.log(data); 
    } 
}); 

Обратите внимание, как вы строите data объект передается на сервер. В этом примере он будет передавать два параметра POST: imeBoxa и komentar.

+0

пока мне было интересно и интересно, если можно было бы отправить параметры, как в вопросе выше, вы были быстрее :-) Идеальный ответ. Один голос от меня. – ddlab

+0

Я бы порекомендовал, чтобы запускать объекты fieldTemplate2 и .append внутри функции success: function, поэтому можно убедиться, что комментарий появляется только тогда, когда он успешно сохранен в db. – ddlab

+0

После этого я пытаюсь повторить эту переменную с помощью этого if (isset ($ _ POST ['imeBoxa'])) { $ uid = $ _POST ['imeBoxa']; } echo $ uid; Если я использую кнопку и добавляю комментарий, тогда она автоматически будет эхом, что я написал @dfsq – user3263661

Смежные вопросы