Php 警告:mysqli\u real\u escape\u string()要求参数1为mysqli,null
有人能帮我理解这意味着什么吗?因为当我看我的代码并将其与向我学习的人进行比较时,我似乎没有犯任何错误的问题,我甚至试图复制他的代码,但我仍然得到了答案 警告:mysqli\u real\u escape\u string()要求参数1为mysqli, 第15行的/home/daltonapala/public_html/mysql/Grab.php中给出了null 警告:mysqli_query()要求参数1为mysqli,给定为null 在第17行的/home/daltonapala/public_html/mysql/Grab.php中 警告:mysqli_num_rows()要求参数1为mysqli_结果, 第19行的/home/daltonapala/public_html/mysql/Grab.php中给出了null 现在我有点明白了,有了它,参数1应该是mysqli,null,因为它没有变量或其他东西,因为我读了一些问题和答案,但我仍然不完全理解,为什么我会有这些警告或错误 以下是我的注册页面代码:Php 警告:mysqli\u real\u escape\u string()要求参数1为mysqli,null,php,mysql,mysqli,Php,Mysql,Mysqli,有人能帮我理解这意味着什么吗?因为当我看我的代码并将其与向我学习的人进行比较时,我似乎没有犯任何错误的问题,我甚至试图复制他的代码,但我仍然得到了答案 警告:mysqli\u real\u escape\u string()要求参数1为mysqli, 第15行的/home/daltonapala/public_html/mysql/Grab.php中给出了null 警告:mysqli_query()要求参数1为mysqli,给定为null 在第17行的/home/daltonapala/publ
<?php
if (array_key_exists('email', $_POST) OR array_key_exists('password', $_POST)){
if ($_POST['email'] == ''){
echo "<p>Please put in your email!</p>";
} else if ($_POST['password'] == ''){
echo "<p>Please put in your Password!</p>";
} else {
$query = "SELECT `id` FROM `users` WHERE email ='".mysqli_real_escape_string($link, $_POST['email'])."'";
$result = mysqli_query($link, $query);
if(mysqli_num_rows($result) > 0){
echo "<p>That email address has already been sign in</p>";
}
}
}
$link = mysqli_connect("localhost", "examplebb", "kle]cwdum)#]", "examplebb");
if (mysqli_connect_error()) {
die("Could not connect to database");
}
?>
<form method="post">
<input name="email" type="text" placeholder="Email">
<input name="password" type="password" placeholder="Password here">
<input type="submit" value="Sign up!">
</form>
在我看来,您在执行mysqli命令后正在定义$link。在执行mysqli命令之前,首先必须定义$link。因此,请尝试将以下几行放在文件顶部的php标记后面,看看这是否有帮助:
$link = mysqli_connect("localhost", "examplebb", "kle]cwdum)#]", "examplebb");
if (mysqli_connect_error()) {
die("Could not connect to database");
您在尝试使用连接对象之后创建它。将mysqli\u connect()
移动到您的文件顶部。谢谢您为我节省了时间。我想我得花一个星期的时间来找出我的代码出了什么问题。