這個問題讓我瘋狂,我試了一切。是不是給我任何錯誤,但它不會插入任何東西到數據庫中。數據庫連接很好,不應該有錯別字。請看一看,看看是否能找到問題:PHP PDO準備插入 - 不插入數據並顯示沒有錯誤
$err = array();
if (isset($_POST['submit'])) {
$ip = gethostbyname($_SERVER['REMOTE_ADDR']);
$date = "2012-02-02 02:02:02"; //Example
$uploader_name = $_POST['uploader_name'];
// Validation happens here...
if (empty($err)) {
$host = "host";
$dbname = "db";
$user = "user";
$pass = "pass";
try {
$dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$sql = "INSERT INTO `table` (`ip`, `date`, `uploader_name`)
VALUES (:ip, :date, :uploader_name)";
$stmt = $dbh->prepare($sql);
# the data we want to insert
$params = array(
':ip' => $ip,
':date' => $date,
':uploader_name' => $uploader_name
);
$stmt->execute($params);
$dbh = null;
} catch(PDOException $pe) {
die('SQL Error');
}
if (empty($err)) {
$err[] = "Success!";
}
}
}
而且,我敢肯定它得到的插入部分,因爲我得到了「成功」的消息。
謝謝!!問題是有些值是NULL。但是它只有一些「需要」的字段,我如何向這些字段插入空白值? – 2by 2012-04-11 22:10:15
您必須爲要添加到準備好的語句的每個輸入提供驗證碼。如果($ myVar === nulll){$ myVar ='';}什麼的。 – 2012-04-11 22:13:30
2年後你噠炸彈 – bryan 2014-06-06 23:07:00