只需尝试将点添加到名为“点”的列中的现有值即可.我读过几篇文章暗示了下面的内容,但是对我来说不起作用.也许是因为我使用的是mysqli而不是mysql?有什么想法吗? if语句可以正常工作.
if (!empty($m1A) && ($r1A == 0)) {
// Rewards pts
$query = "UPDATE users SET Points=Points+3 WHERE 1A='$m1A'";
$result = mysqli_query($conn, $query);
// Record reward of pts
$query1 = "UPDATE rounds SET 1A = 1";
$result2 = mysqli_query($conn, $query1);
}
解决方法:
如果列名以数字开头,则必须在反引号中将其引起来:
$query = "UPDATE users SET Points=Points+3 WHERE `1A`=$m1A";
和:
$query1 = "UPDATE rounds SET `1A` = 1";
而且我建议使用带有绑定参数的预备语句,以避免sql注入问题.
编辑:如果您的1A列不是整数列,并且值是字符串,则需要引用它们.
$query = "UPDATE users SET Points=Points+3 WHERE `1A`='$m1A'";
^ ^
尽管可以通过准备好的语句自动解决该问题…
标签:mysqli,php
来源: https://codeday.me/bug/20191029/1960135.html