当涉及到javascript / ajax时,我是一个真正的菜鸟,所以任何帮助将非常感激。 参考这个问题:
Updating a MySql database using PHP via an onClick javascript function
但主要关注Phill Sacre留下的答案。我想知道是否有人可以详细说明我们是如何(如果我们可以?)通过他的例子,使用jquery传递值/数据。 他留下的代码示例如下:
function updateScore(answer, correct) {
if (answer == correct) {
$.post('updatescore.php');
}
}
...
<a onclick="updateScore(this, correct)" ...> </a>
比如说,我们想用PHP将任意数量的值传递给数据库,有人能给我一个javascript函数所需内容的片段示例吗?或者详细说明上面发布的内容了吗?
再次感谢所有人。
答案 0 :(得分:1)
我能想到的最简单的例子就是这个。在 if 块中进行AJAX调用,如下所示:
$.get('updatescore.php', {'score': '222'}, function(d) {
alert('Hello from PHP: ' + d);
});
在“updatescore.php”脚本上,执行此操作:更新分数。并返回纯文本,说明更新操作是否成功。
祝你好运。P.S。:你也可以使用 POST 而不是 GET 。
答案 1 :(得分:0)
你要做的是在php服务器端有一个页面让我们说它的update.php。您的javascript将在Ajax请求中访问此页面,接收请求并将其放入数据库中。
php可能看起来像这样:
<?php
mysql_connect(...)
mysql_query("INSERT INTO table
(score) VALUES('$_GET["score"]') ")
你的javascript只是在update.php上预先形成ajax请求,并将变量作为获取值“得分”发送给它。
答案 2 :(得分:0)
Phil没有将任何值传递给脚本。他只是向脚本发送请求,其中很可能包含“更新”分数的逻辑。一个精明的人参加他的测试虽然可以简单地查看HTML源代码并通过检查锚点正在做什么来查看答案。
为了进一步挑选他的解决方案,应该使用一组单选按钮,并且在表单中,应该使用按钮或某种可点击元素通过ajax请求将值发送到服务器,并且值发送到服务器可以分析并将答案的状态发送回页面。
由于您使用的是jQuery,因此代码可以不引人注目,如下例所示:
$('#submit_answer').click(function() {
var answer = 'blah' // With blah being the value of the radio button
$.get('updatescore.php',
{'value': answer},
function(d) {
alert('Your answer is: ' + d') // Where d is the string 'incorrect' or 'correct'
}
});
享受。