2016-11-03 200 views
-1

我正在學習關於MySQL的一門課程,我正在學習如何讓用戶輸入一段代碼(電子郵件和密碼),腳本中的信息將放入數據庫在phpMyAdmin上。我似乎無法得到它的工作?當我通過錯誤檢查器時,我的代碼沒有任何錯誤。我對PHP和MySQL也是全新的。我知道它可以找到數據庫,因爲我可以更新現有的數據。MySQL數據庫不能正常工作

<?php 

$link = mysqli_connect("host", "username", "password", "username"); 

if (mysqli_connect_error()) { 

    die ("There was an error connecting to the database"); 

} 

$query = "INSERT INTO `users` (`email`, `password`) VALUES('email', 'password')"; 

mysqli_query($link, $query); 

$query = "SELECT * FROM users"; 

if ($result = mysqli_query($link, $query)) { 

$row = mysqli_fetch_array($result); 

echo "Your email is ".$row[1]." and your password is ".$row[2]; 

} 

?> 
+2

基於零的數組,以$ row [0]和$ row [1]開始 –

+0

@RicardoOrtegaMagaña確實,但[1]'應該至少顯示一些內容,而這不是真正的問題。他們聲明插入不起作用。按標題*「輸入數據庫不工作」*。 –

+0

我在這裏看不到任何錯誤。你說你通過一個錯誤檢查器,是什麼?我覺得你沒有告訴我們真實/完整的故事。你的價值觀包含了你想要輸入除字符串文字之外的東西。 –

回答

-3

爲什麼你不嘗試使用PHP接收它們?

而只是讓

$email= $POST['email'] 
$password= $POST['password'] 

,並更改查詢

$query = "INSERT INTO `users` (`email`, `password`) VALUES(" .$email. ", ". $password.")"; 
+3

我必須誠實;如果我能降低這一點,我會的。它充滿了錯誤。 –

+0

爲什麼你不能downvote? –

+0

http://stackoverflow.com/help/formatting – Barmar

0

創建一個完善的版本。覈實。

<?php 

    $link = mysqli_connect("host", "username", "password", "username"); 

    if (mysqli_connect_error()) { 

     die ("There was an error connecting to the database"); 

    } 

    $query = "INSERT INTO `users` (`email`, `password`) VALUES('email', 'password')"; 

    $result = mysqli_query($link, $query); 
    if($result != false) 
    { 
     echo "The record has been successfully inserted.<br>"; 
    } 
    else 
    { 
     echo "Error Occured in the INSERT query.<br>Error : ".mysqli_error($link); 
    } 

    $query = "SELECT * FROM users"; 
    $result = mysqli_query($link, $query); 
    if($result != false) 
    { 
     echo mysqli_num_rows($result)." Records found.<br>"; 
     while($rows = mysqli_fetch_array($result)) 
     { 
      echo $rows["email"]."<br>"; 
     } 
    } 
    else 
    { 
     echo "Error Occured in the SELECT query.<br>Error : ".mysqli_error($link); 
    } 


    mysqli_close($link); 

    ?> 
+0

Nandan,它給了我這個警告信息 - 警告:mysqli_error()期望參數1爲mysqli,null在第20行的服務器url中給出。012HER錯誤在INSERT查詢中發生錯誤。 錯誤:找到1記錄。 – Colton

+0

將'$ conn'替換爲'$ link' –

+0

@Colton,是PaulSpiegel是對的,用$ link替換$ conn。我經常使用$ conn作爲連接對象。無論如何,我已經更新了答案,檢查它。 –

0

更新

原來我沒設置AUTO_INCREMENT設置,因此使我建立了我的數據庫不正確的方式!他在我正在經歷的教程中建立了另一個數據庫,並且我發現他是這麼做的。感謝大家幫助我解決問題的努力!