我有一個程序,可以將註冊數據從一個數據表移動到另一個數據表(認爲電子郵件確認後,登錄激活頁面從temp變爲永久)。我還不是最好的Mysql,仍然在學習,所以這可能是一個愚蠢的問題。我已經檢查了所有的stackoverflow,它看起來像我正確地做。爲什麼我的SELECT代碼不工作?
由於某種原因,我的選擇呼叫不起作用。這裏有一點我的代碼:
$username = mysqli_query($dbc,"SELECT 'username' FROM 'temp_users' WHERE 'activation'= '$key'");
$password = mysqli_query($dbc,"SELECT 'password' FROM 'temp_users' WHERE 'activation'= '$key'");
// Add row to database
mysqli_query($dbc,"INSERT INTO users (username, password, salt', 'email') VALUES ('$username', '$password_hash', '$salt', '$email')");
echo $username, $password, $email, mysqli_affected_rows($dbc), $key;
// Print a customized message:
if (mysqli_affected_rows($dbc) == 1) //if update query was successfull
{
echo '<div>Your account is now active. You may now <a href="login.php">Log in</a></div>';
} else {
echo '<div>Oops !Your account could not be activated. Please recheck the link or contact the system administrator.</div>';
}
我回聲把我的變量,所以我可以看到發生了什麼事情。在這一點上,$ key是正確的,$ email是從以前的代碼是正確的,mysqli_affected_rows($ dbc)給我一個-1(這意味着錯誤)。 $ username和$ password是空白變量,所以很明顯,我正在做SELECT錯誤。
有什麼想法或幫助?
* *簡單,那是因爲你用你的周圍表名和列報價;只是刪除它們。 –
愛上(一致):'插入用戶(用戶名,密碼,鹽','email'';) –
是的,我也注意到了。 OP有一種奇怪的方法來查詢DB @TheBlueDog沒有打擾回答。我認爲這隻會打開一句諺語的「蠕蟲罐頭」。 OP的代碼是過度殺傷性的,相當混亂,*充其量*。 –