PHP + Jquery – 通过ajax将值传递给php并检查变量

我不能让以下PHP + jQuery工作 – 我想要脚本要做的就是通过ajax传递值,并让php抓住它,检查匹配并添加1得分。

这是我写的代码:

  $(document).ready(function() { $("#raaagh").click(function(){ var value = "145"; alert(value); $.ajax({ url: 'processing.php', //This is the current doc type: "POST", data: ({name: value}), success: function(){ location.reload(); } }); }); });  

Ajax Away

感谢您的帮助,我在两个实例中都将GET更改为POST,并且没有任何乐趣 – 还有其他错误。

首先:不要回到黑暗时代……不要使用相同的脚本来生成HTML并响应ajax请求。

我无法理解你想要做什么……让我改变你的代码,这样至少可以理解并记录正在发生的事情。 似乎问题在于您从成功处理程序调用location.reload。

// ajax.php – 如果name参数是145则输出2,否则输出1(????)

  

// test.html

  

Ajax Away

你在jQuery中使用POST,但是你试着在php中获得一个GET。

顺便说一句,最好在读取之前检查是否设置了GET / POST变量。 使用isset()函数。

您使用Ajax POST提交数据,但尝试从GET中读取数据。 在您的Ajax调用中使用type: "GET"或在PHP中使用$_POST['name']

问题是你使用jQuery来发布你的值,但是你正在用GET阅读它。

您应该能够通过将$ _GET [‘name’]更改为$ _POST [‘name’]来解决您的问题

$_POST替换$_GET就可以了。 基本上POST和GET是将变量传递给脚本的两种不同方式。 php中的get方法也可以附加在url: script.php?variable=value的末尾,并且很容易入侵。 虽然post方法可以使用表单或ajax调用提交,但它非常安全,至少比get更多。 另外我建议您在调用之前检查GET或POST变量是否设置,以便您可以防止愚蠢的通知错误。

只需使用以下代码:

 if (isset($_POST['var']) and !empty($_POST['var'])) { // do something } 

你也可以删除

 }else{ // do nothing } 

脚本的一部分,因为else子句不是必须的。