2016-11-25 106 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

感謝您幫助我,現在它也可以工作。 –

相關問題