尝试使用jquery .post()将数据发送到php文件,但数据永远不会到达

时间:2013-04-24 16:06:47

标签: php javascript jquery html

在我的insert.php文件中,我有以下

<script type="text/javascript"   src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
<script type="text/javascript" src="includes/js/jquery.form.js"></script>
<script type="text/javascript">




$(document).ready(function() {
$(".like").click(function() {
var data = $(this).attr('data-id');
$.post("data.php", {'name': data}, function(response){
  $('#dv').html(response);
});
});
 });

...

<? echo "<br><a href class=like id=buton data-id='$id'> Like (" . $row['likes'] . ")</a>"; ?> 

...

在data.php中我(仅用于测试目的)

<script type="text/javascript"          src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
<script type="text/javascript" src="includes/js/jquery.form.js"></script>
<script type="text/javascript">
alert(<? echo $_GET['name']; ?>);
</script>

...

我试图找出为什么单击类似链接时$ _GET ['name']未定义。我到达data.php文件但没有'name'数据。我是php和jquery的新手,所以请不要在回答问题时做出假设。谢谢!

2 个答案:

答案 0 :(得分:1)

因为你正在做一个帖子而不是得到。为什么不使用$ .get()?

答案 1 :(得分:0)

您正在通过POST发送数据并检查$_GET php变量,该变量为空,因为您没有通过GET发送。

改变这个:

alert(<? echo $_GET['name']; ?>);

为:

alert("<? echo $_POST['name']; ?>");