我有一些代码,我现在至少已经完成了30次,并且它困扰了我好几个月(真的)。我已经修复了我看到的错误,但它根本不起作用。我希望任何读者都能找到我的错误......
好的,所以代码只是一个关于鼠标悬停效果的ajax请求,它将数据发布到另一个页面,在该页面中接收数据。请看一下:
这是ajax请求:
$(document).ready(function () {
$("#secretcoin").mouseover(function () {
$.ajax({
type: "POST",
url: "achievements.php",
data: {
Home_Coin_Locator: "Yes"
},
error: errorAlert
});
});
});
这就是请求 - 现在这里是接收页面,achievement.php
$achieve4 = $_POST['Home_Coin_Locator'];
if ($achieve4 == 'Yes') {
$awardSTRsql = "UPDATE Awards_Inv SET Home_Coin_Locator='Yes' WHERE Username = '$username'";
mysql_query($awardSTRsql, $connection) or die(mysql_error());
$updatestatsSTRsql = "UPDATE User_Info SET Coins = Coins + 120, Skill_Points = Skill_Points + 10, Awards = Awards + 1 WHERE Username = '$username'";
mysql_query($updatestatsSTRsql, $connection) or die(mysql_error());
} else {}
我已经将我的代码减少到少量,然后大力检查,但它仍然不起作用......
顺便说一下,$ connection只是我与数据库的连接,我可以保证这是准确的。 $ username是在我没有提供的代码中定义的会话用户名,但我也知道变量是准确的......请帮助我!
答案 0 :(得分:0)
javascript似乎更容易测试php文件,你应该这样做:
> $achieve4 = $_GET['Home_Coin_Locator']; if ($achieve4 == 'Yes') {
> $awardSTRsql = "UPDATE Awards_Inv SET Home_Coin_Locator='Yes' WHERE Username = '$username'";
> mysql_query($awardSTRsql, $connection) or die(mysql_error());
> $updatestatsSTRsql = "UPDATE User_Info SET Coins = Coins + 120, Skill_Points = Skill_Points + 10, Awards = Awards + 1 WHERE Username =
> '$username'";
> mysql_query($updatestatsSTRsql, $connection) or die(mysql_error()); } else {}
然后转到/achievements.php?Home_Coin_Locator=Yes并查看是否有任何错误。
确保您启用了php错误报告,因此如果出现任何错误,将会显示错误报告。