虽然我遵循了来自http://api.jquery.com/jQuery.post/的示例代码,当然 Stackoverflow 我找不到解决我的问题的方法。
我在 html 中有一个切换图像,每次用户单击它时,都会更改图像并更新 DB 中的列。代码如下:
HTML
<input type="image" src="smileys/heart.gif" class="play" onclick="toggle(this,'<?php echo $ida;?>')"/>
AJAX
function toggle(el,al){
if(el.className=="play")
{
el.src='smileys/lol.gif';
el.className="pause";
$.post("update.php", { "hr": 1, "ida": al } );
}
else if(el.className=="pause")
{
el.src='smileys/heart.gif';
el.className="play";
$.post("update.php", { "hr": 0, "ida": al } );
}
console.log(al);
return false;
}
更新.php
<?php
$host = "localhost";
$user = "user";
$pass = "pass";
$database = "db";
$heart=$_GET["hr"];
$ida=$_GET["ida"];
$con = mysql_connect($host,$user,$pass);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($database, $con);
mysql_query("UPDATE tablename SET heart='$heart' WHERE id='$ida'");
?>
切换功能运行良好,但当用户单击图像时,数据库不会更新。我相信它与$.post
函数有关,没有将数据正确发送到 php.ini。
顺便说一句,如果我这样做
http://domain.com/update.php?hr=1&ida=127
有用。
注意:我只在这个例子中使用 mysql 而不是 PDO。...是的,我的代码又乱又丑,还在学习。有什么帮助吗?谢谢