将$ _GET传递给脚本(AJAX)

时间:2016-07-14 18:56:58

标签: php jquery mysql ajax

我想传递 $ recptid = $ _GET ['id']; 以下

<div id="result"></div>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $('#name').focus();
        $('#name').keypress(function(event) {
            var key = (event.keyCode ? event.keyCode : event.which);
            if (key == 13) {
                var info = $('#name').val();
                                    $.ajax({
                    method: "POST",

                    //need to pass my get variable  
                    url: "message_action.php",
                    data: {name: info},
                    success: function(status) {
                        $('#result').append(status);
                        $('#name').val('');
                    }
                });
            };
        });
    });
</script>

然后执行message_action.php查询,因为我的错误是Undefined变量:recptid。由于我的查询无法访问它,因为它位于AJAX的单独文件中

我怎样才能将$ recptid传递给message_action.php?

3 个答案:

答案 0 :(得分:0)

在你的data: {name: info},中只是放了东西.. data: {name: info, recptid: '<?php echo $_GET["id"]; ?>'},然后在 message_action.php 中使用$ _POST [&#39; recptid&#39;]; (使用post,因为你的AJAX Call使用POST方法)

答案 1 :(得分:0)

var receiptFromPHP = "<?php echo htmlspecialchars($_GET['id']) ?>";
//now you can use receipt in javascript.

现在使用AJAX:

$.ajax({
   method: "POST",

   //need to pass my get variable  
   url: "message_action.php",
   data: {
     name: info,
     receipt: receiptFromPHP
   },
   success: function(status) {
     $('#result').append(status);
     $('#name').val('');
   }
 });

答案 2 :(得分:0)

我认为您尝试发送&#39; id&#39;使用$ .ajax来消息&#39; message_action.php&#39;如果是这样,你使用post方法,而不是get,你必须使用相同的方法在&#39; message_action.php&#39;

$recptid = $_POST['id'] 

并且您必须在发布数据中包含ID

data:{name: info, id: id}