2016-09-04 33 views
0

數據未插入。我覺得有什麼錯mysqli插入,有什麼不對?

$sql = "INSERT INTO `users` (`Username`, `Password`, `FirstName`, `LastName`, `Email`, `ContactNumber`) 
 
VALUES ('".$_POST["Username"]."','".$_POST["Password"]."','".$_POST["FirstName"]."','".$_POST["LastName"]."','".$_POST["Email"]."','".$_POST["ContactNumber"]."')";

當我試圖改變本聲明「其他」回聲「successs」;它的工作。 請有人能告訴我什麼是錯的。

<?php 
 

 
error_reporting(E_ALL & ~E_NOTICE); 
 

 
if(isset($_POST["Register"])) 
 
{ 
 
\t $servername = "localhost"; 
 
\t $username = "root"; 
 
\t $password = ""; 
 
\t $dbname = "dbuseraccounts"; 
 

 
\t // Create connection 
 
\t $conn = new mysqli($servername, $username, $password, $dbname); 
 
\t // Check connection 
 
\t if ($conn->connect_error) { 
 
\t die("Connection failed: " . $conn->connect_error); 
 
\t } 
 

 
\t 
 
\t \t $user = $_POST['Username']; 
 
\t \t $pass = $_POST['Password']; \t 
 
\t 
 
\t \t $query = mysqli_query($conn, "SELECT * FROM users WHERE Username= '".$user."'"); 
 
\t \t 
 
\t \t if(mysqli_num_rows($query) > 0) 
 
\t \t { 
 
    \t \t echo "email already exists"; 
 
\t \t } 
 
\t \t else 
 
\t \t { 
 
\t \t \t $sql = "INSERT INTO users (Username, Password, FirstName, LastName, Email, ContactNumber) 
 
VALUES ('".$_POST["Username"]."','".$_POST["Password"]."','".$_POST["FirstName"]."','".$_POST["LastName"]."','".$_POST["Email"]."','".$_POST["ContactNumber"]."')"; 
 
\t \t } 
 

 
\t 
 

 
$conn->close(); 
 
} 
 
?>

+0

我覺得形式的名稱屬性有一些問題,請執行查詢。將表單代碼也放在這裏 –

+0

您已開放給SQL注入。你也不會尋找錯誤,所以永遠不會呈現給你。 – chris85

回答

3

你的數據不被插入,因爲你還沒有真正執行查詢。

if (mysqli_num_rows($query) > 0) { 

    echo "Username already exists"; 

} else { 

    $sql = "INSERT INTO users (Username, Password, FirstName, LastName, Email, ContactNumber) VALUES ('".$_POST["Username"]."','".$_POST["Password"]."','".$_POST["FirstName"]."','".$_POST["LastName"]."','".$_POST["Email"]."','".$_POST["ContactNumber"]."')"; 

    /* Run your query and check for errors */ 
    $query = mysqli_query($conn, $sql) or die(mysqli_error($conn)); 
} 
+0

關於SQL注入的說明我認爲也會使OP受益。 – chris85

+0

謝謝你親切先生! – Red

1

使用

mysqli_query($conn, your query);