Can';使用PHP无法使SQL更新正常工作
我试图让php使用update语句更新MySQL表,但它根本不起作用。以下是我编写的代码:Can';使用PHP无法使SQL更新正常工作,php,mysql,tracking,sql-update,Php,Mysql,Tracking,Sql Update,我试图让php使用update语句更新MySQL表,但它根本不起作用。以下是我编写的代码: $add = "1"; $counter=mysql_query("SELECT * FROM frases WHERE id = '".$id."'"); while ($ntcounter=mysql_fetch_array($counter)) { mysql_query("UPDATE frases SET count = '".$ntcounter[count]+$add."
$add = "1";
$counter=mysql_query("SELECT * FROM frases WHERE id = '".$id."'");
while ($ntcounter=mysql_fetch_array($counter)) {
mysql_query("UPDATE frases SET count = '".$ntcounter[count]+$add."' WHERE id = '".$id);
}
如您所见,我基本上是在尝试更新SQL记录,以跟踪特定内容ID的访问次数
谢谢 在SQL查询中使用别名(这不是强制性的,但会使查询更具可读性。) 现在您可以访问您的变量
$ntcounter['count']
因此,结果是:
$add = "1";
$id = (int)$id
$counter = mysql_query("SELECT * as count FROM frases WHERE id = '".$id."'");
while ($ntcounter = mysql_fetch_assoc($counter)) {
mysql_query("UPDATE frases SET count = '".($ntcounter['count']+$add)."' WHERE id = '".$id);
}
在SQL查询中使用别名(这不是强制性的,但会使查询更具可读性。) 现在您可以访问您的变量
$ntcounter['count']
因此,结果是:
$add = "1";
$id = (int)$id
$counter = mysql_query("SELECT * as count FROM frases WHERE id = '".$id."'");
while ($ntcounter = mysql_fetch_assoc($counter)) {
mysql_query("UPDATE frases SET count = '".($ntcounter['count']+$add)."' WHERE id = '".$id);
}
您没有在update语句末尾关闭单个报价:
mysql_query("UPDATE frases SET count = '".$ntcounter[count]+$add."' WHERE id = '".$id."'")
您没有在update语句末尾关闭单个报价:
mysql_query("UPDATE frases SET count = '".$ntcounter[count]+$add."' WHERE id = '".$id."'")
您实际上不需要两个查询。你应该可以像这样更新
mysql_query("UPDATE frases SET `count` = `count` + 1 WHERE id = ".$id);
您实际上不需要两个查询。你应该可以像这样更新
mysql_query("UPDATE frases SET `count` = `count` + 1 WHERE id = ".$id);