代码:
.collect()
答案 0 :(得分:2)
错误不言自明,mysqli_query
需要2个参数 - 文档可在此处找到:https://php.net/mysqli_query
根据文档,第一个参数是通过mysqli_connect
创建的数据库连接。
你的内容应该类似于:
$db = mysqli_connect(..);
// ..
$email_check = mysqli_query($db, "SELECT email FROM users WHERE email='$email'");
此外,您的代码容易受到SQL注入攻击,您应该考虑在查询中使用参数,例如:
if ($stmt = mysqli_prepare($db, "SELECT email FROM users WHERE email = ?"))
{
mysqli_stmt_bind_param($stmt, "s", $email);
mysqli_stmt_execute($stmt);
$email_check = mysqli_stmt_num_rows($stmt);
}
答案 1 :(得分:0)
TL; DR您需要在mysqli_query函数中提供查询连接。
我想你问为什么你会收到这些错误消息。第一条消息指出你需要在mysqli_query调用中有两个参数。第一个是与服务器的连接,第二个是查询本身。
以下是https://www.w3schools.com/php/func_mysqli_query.asp
的示例<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// Perform queries
mysqli_query($con,"SELECT * FROM Persons");
mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age)
VALUES ('Glenn','Quagmire',33)");
mysqli_close($con);
?>
第二条错误消息是因为当msqli_query调用失败时,$ email_check将变为null,从而使msqli_num_rows失败。 请注意,您显然必须更改所有myqsli_query调用。如果您想了解有关通话的更多信息http://php.net/manual/en/mysqli.query.php。
,请参阅手册链接