2016-11-25 100 views
-1

有人可以帮我理解它是什么意思,因为当我查看我的代码并将其与我学习的人进行比较时,似乎没有任何问题错误,我甚至试图复制他的代码,我仍然得到警告:mysqli_real_escape_string()期望参数1是mysqli,null

警告:mysqli_real_escape_string()预计参数1是mysqli的,上线/home/daltonnapala/public_html/mysql/Grab.php给出 空15

警告:mysqli_query()期望参数1为mysqli,null为 in/home/daltonnapala/public_html/m ysql/Grab.php线路17

警告:mysqli_num_rows()预计在/home/daltonnapala/public_html/mysql/Grab.php给定在线查阅19

参数1被mysqli_result, 空我有点明白,有这个需要参数1是mysqli,null,因为它没有变量或什么,因为我读了一些问题和答案,但我仍然不完全明白,为什么我有这些警告或错误。

这里是我的注册页面代码:

<?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> 
+2

创建*你想使用它之后的连接对象*。将'mysqli_connect()'移动到文件的顶部。 – Qirel

+0

谢谢你救了我的一天。我认为我将不得不浪费一周的时间来试图找出我的代码有什么问题。 –

回答

0

在我看来,您正在执行的mysqli命令后确定$链接。首先必须定义$ link,然后才能执行mysqli命令。因此,尽量把下面几行你的文件的顶部的PHP标签之后,看看是否有帮助:

$link = mysqli_connect("localhost", "examplebb", "kle]cwdum)#]", "examplebb"); 
if (mysqli_connect_error()) { 

die("Could not connect to database"); 
+1

感谢您帮助我,现在它也可以工作。 –

相关问题