我正在尝试使用一个简单的计数器在网站上实现“最流行的搜索”功能。这个想法是第一次进行搜索时,查询存储在一个特殊的表中。之后,每次进行相同的搜索时,计数都会递增 1。我认为我完全按照我应该做的去做,但代码似乎不起作用。 count
值在表中保持为 NULL
。这是我的代码。 “Searchny”是我存储搜索的表格。非常感谢任何指针!
$search_result = mysql_query("SELECT * FROM searchny WHERE sok='$sokt'");
if(mysql_num_rows($search_result) == 0 ) {
$sql = "INSERT INTO searchny (sok, dt) VALUES ('" . $sokt . "', NOW());";
mysql_query($sql);
}
else {
mysql_query("UPDATE searchny SET count = count+1 WHERE sok='$sokt'");
}
最佳答案
可能您的计数列默认为 NULL
,并且每个 count+1
都不会减少 NULL
。尝试将默认值设置为 1 或在 INSERT
中将其明确设置为 1。
关于php - mysql中的计数器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8912710/