我有一些PDO,我試圖用來插入數據到MySQL表中。爲什麼沒有插入到我的MySQL表中?
private function addResource() {
include('./dbconnect.php');
$pdo = new PDO("mysql:host=$db_host;dbname=$db_name;", $db_user, $db_password);
$stmt = $pdo->prepare('INSERT INTO Resources VALUES (?, $title, $url, $_SESSION[\'tblUserID\'');
$stmt->bindParam(1, $title);
$stmt->bindParam(2, $url);
$stmt->bindParam(3, $_SESSION['tblUserID']);
$stmt->execute();
if ($stmt->rowCount() != 1)
throw new Exception('Could not add resource');
$status = true;
}
事情是,每當我檢查表時,什麼都沒有插入。怎麼來的?
編輯:我有session_start()在頁面頂部。
您要添加三個參數到查詢,但只有一個佔位符。嘗試用額外的問號替換$ title,$ url和$ _SESSION [\'tblUserID \'。現有的佔位符添加了什麼? – andrewsi 2013-05-06 17:12:06
如果您使用準備好的語句,爲什麼還要將變量插入字符串中? – Barmar 2013-05-06 17:12:08
您應該在PDO方法調用周圍放置'try' /'catch'處理程序,以便在SQL中看到錯誤。 – Barmar 2013-05-06 17:13:06