我不斷收到錯誤Unknown Column in field List
。字段列表中的未知列
該數據庫具有以下字段:
ID - AUTO INCRIMENT
username
password
groupID
prefs_list_item
這裏是我的代碼。這些變量作爲一個設置值存儲在上面,我知道這並不會給我任何問題,因爲我在同一個腳本中的其他數據庫中使用它們。
try {
$wpdb = new PDO('mysql:host=localhost; dbname=******', '*******',
'*******');
$wpdb->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//Creates the SQL statement to write into the picture database
$pictureUPDATE = $wpdb->prepare
("INSERT INTO pe_users (
username,
password,
groupID
) VALUES (
$username,
$passmd5,
$groupID
)
");
//Executes the writing into the picture database
$pictureUPDATE->execute();
echo("<p>Your account to upload photos is now active!</p>");
}
//catches any errors that might have come from updating the picture databse
catch (PDOException $ex) {
$msg = $ex->errorInfo;
error_log(var_export($msg, true));
die("<p>Sorry, there was a unrecoverable database error with PICTURES.
Debug data has been logged.</p>");
}
不知道發生了什麼事,任何人都有線索?
MD5是不安全的。您應該使用bcrypt或PBKDFv2。 – SLaks
你正在調用'prepare()',但你沒有綁定任何變量。相反,您只需插入PHP變量'$ username,$ passmd5,$ groupID'。您沒有獲得準備好的聲明的安全性。 (更不用說你的變量看起來不會被引用,除非它們在字符串變量中引用) –
但是你確定它是'INSERT'語句導致錯誤嗎? –