Ajax成功后,如何将数据传递给php变量

时间:2014-10-22 10:34:22

标签: javascript php jquery ajax

我有这样的剧本

 function getval(sel) {
         var id= sel.value;  
                $.ajax({
                        type:"POST",
                        url:"./tab.php",
                        data:{id:id,task:'search'},
                         success: function(response){
                             //(I don't know what i should write for pass to php code)
                         }
            });
    }

我不知道如何将数据response传递给php代码? 例如:如果我alert response,它显示123。所以我希望将值123传递给php中的变量 $id = 123

3 个答案:

答案 0 :(得分:0)

response是通过PHP传递的结果,而不是TO php。传递给php的是idtask

tab.php中,您可以访问以下两个值:

<?php
$id = $_POST['id'];
$task = $_POST['task'];
//do anything you want with it...
?>

答案 1 :(得分:0)

这不是正确的工作流程。 PHP在运行时执行,因此每次页面加载完成后,您都无法将变量重新放回PHP中(除非您重新加载页面)。这就是AJAX的用武之地,因此您可以从JavaScript / jQuery调用PHP脚本,而不必每次都重新加载页面。

正确的做法是将您在tab.php脚本中生成的变量存储在数据库中,$ _SESSION,$ _COOKIE或类似的东西:

//put this at the top of all your php scripts you want to use the variable in
session_start();
//now store the variable you wanted to pass (in tab.php)
$_SESSION['returnValue'] = $myValue;

现在,如果你想在其他页面中使用该变量,只需回复它(记得在PHP脚本的顶部添加session_start()

echo $_SESSION['returnValue'];

答案 2 :(得分:0)

首先,首先阅读this

要回答你的问题,

function getval(sel) {
   var id= sel.value;  
   $.ajax({
      type:"POST",
      url:"./tab.php",
      data:{id:id,task:'search'},
      success: function(response){
         //(I don't know what i should write for pass to php code)
      }
    });
}

idtask的结果通过$_POST(类型:“POST”)发送到页面tab.php(网址:“。/ tab.php” )。如果你想在另一个页面上这样做,只需更改你的ajax调用中的url:url:“./ any_other_page.php”,发布的值将发送到那里

最后,请阅读THIS帖子。它写得非常好并且解释得非常好。

希望它有所帮助!
继续编码!
战神。