在此脚本中找不到问题:
$delhash = array();
$resultxx = mysqli_query($datba1,"SELECT htag
FROM wall_hashtags
WHERE publicat='$permid'") or die('Error1');
while(list($dht) = mysqli_fetch_row($resultxx)) {
$delhash[] = $dht;
}
以下更新无效:
$result_update = mysqli_query($datba1,"UPDATE wall_hashtags SET
numbr=numbr-1 WHERE htag IN (".implode(",", $delhash).")")
die(mysqli_error($datba1));
您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在第一,第二,第三'附近使用正确的语法。在第1行
阵列:
echo '<pre>'; print_r($delhash); echo '</pre>';
Array
(
[0] => first
[1] => second
[2] => third
)
答案 0 :(得分:6)
请确保使用带有IN()
值的varchar
子句进行更新。查看this了解详情。
所以你应该用'
包装它。
$result_update = mysqli_query($datba1,"UPDATE wall_hashtags SET
numbr=numbr-1 WHERE htag IN ('".implode("','", $delhash)."')")
or die(mysqli_error($datba1));