この問題は私を狂わせてしまい、すべてを試しました。 Isは私に何のエラーも与えませんが、データベースにも何も挿入しません。データベース接続は良好で、タイプミスはありません。見てみると、あなたは問題を見つけることができるかどうかを確認してください。また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
準備された文に追加する入力ごとに検証コードを提供する必要があります。 if($ myVar === nulll){$ myVar = '';}か何か。 –
2年後にあなたは大爆弾 – bryan