2016-01-31 58 views
-2
<?php 
include('dbConnection.php'); 
?> 
<!DOCTYPE html> 
<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title></title> 
</head> 
<body> 


    <?php 
     //get the values from the form, using the POST method. 
     $first_name = $_POST['first_name']; 
     $last_name = $_POST['last_name']; 
     $profession = $_POST['profession']; 
     $gender = $_POST['gender']; 
     $date_of_birth = $_POST['date_of_birth']; 
     $email = $_POST['first_name']; 
     $username = $_POST['username']; 
     $password = $_POST['password']; 

     $query = "SELECT username FROM user WHERE username = '$username' "; 
     $result = mysqli_query($link, $query) ; 

     if (mysqli_num_rows($result) >= 1) { 
      echo $message ="WARNING: Book already exist!<br/>"; 


     } 

     else { 

     $queryInsert = "INSERT INTO user (first_name,last_name,profession,gender,date_of_birth,email,username,password)" . 
        "VALUES ('$first_name', '$last_name', '$profession', '$gender', '$date_of_birth', '$email', '$username', '$password')"; 

     $queryInsert = mysqli_query($link,$resultInsert); 

     $resultInsert = mysqli_query($link,$queryInsert); 
     { 
      echo "<center><h2>It has been succesfully added!</h2><br> 
        Click <a href='manageBooks.php'>here</a> to manage book(s)<br></center>"; 

     }} 



    ?> 


</body> 
</html> 

嗨,我遇到了3個主要問題,當我跑這組代碼。mysqli空查詢問題

說明:未定義變量:resultInsert在C:\ XAMPP \ htdocs中\ PhpProject1 \ doRegister.php在線38

警告:mysqli_query():用C空查詢:\ XAMPP \ htdocs中\ PhpProject1 \ doRegister.php在線38

警告:mysqli_query():用C空查詢:\ XAMPP \ htdocs中\ PhpProject1 \ doRegister.php第40行

任何人都能夠幫助引導我沿着什麼我需要相應地改變?

+0

您需要了解您的代碼中至少發生了什麼。 –

+0

嗯,它主要是空的查詢,我真的不明白 – marcus

+0

編輯:你在一個*不正確的地方使用'$ resultInsert'。你的查詢應該是'$ status = mysqli_query($ link,$ queryInsert); '。並且您正在執行查詢兩次。 –

回答

0

您在定義之前傳遞$ resultIndex。 刪除此行38

0

您正在使用mysqli_query兩次:

$queryInsert = mysqli_query($link,$resultInsert); 

$ resultInsert是不是這個原因,你變得越來越不確定變量的錯誤在任何地方定義。

解決方案:

如果你想比你需要在這裏改變變量名稱兩次運行查詢:

// first query 

$queryInsert_Change = mysqli_query($link, $queryInsert); 

旁註

你的代碼是開放的對於SQL注入,您需要使用SQL注入來阻止您的代碼。

基本技巧:

,如果你得到任何通知,像Undefined variable這意味着一個變量,你的代碼需要被定義爲空或有一定的價值是不確定的永遠記住。