我认为以下代码应该可以解决问题,但它仍然无法检测用户名是否存在。
这是我的代码:
sudo apt remove oracle-java9-installer
任何人都知道我在做错了什么/在这里失踪了吗?
答案 0 :(得分:1)
我认为你应该这样写:
if(mysqli_num_rows($result) >= 1)
而不是
if(mysqli_num_rows($result >= 1))
mysqli_num_rows会返回一个int,因此在if语句中,您必须在)
之后放置$result
答案 1 :(得分:0)
我认为你应该这样写:
$query = "SELECT * FROM users WHERE username=" . $_POST['username'];
if ($result = mysqli_query($dbc, $query)) {
echo '
<br><br>
<span style="color:red;text-align:left;">
This userame has already been taken!
</span>';
exit;
}
答案 2 :(得分:0)
你错过了一些引号和单引号。
$query = "SELECT * FROM `users` WHERE `username` = '" . $_POST['username'] ."'";
$result = mysqli_query($dbc, $query) OR DIE(mysqli_error($dbc)); // Dies if there is any error #debugging
$result_rows = mysqli_num_rows($result);
if ($result_rows >= 1) {
echo '</br></br><span style="color:red;text-align:left;">This userame has already been taken!</span>';
exit;
}
使用username = '" . $_POST['username'] ."';
代替" . $_POST['username'];
然后使用OR DIE(mysqli_error($connection));
为查询添加了一些调试。