0

私の人生では、この単純な挿入クエリを機能させることができないようです。

try {

// Connect to database
$dbh = new PDO("mysql:host=$host;dbname=$db", $user, $pass);

// Create an array of all data to be inserted
$data = array(':id'      => 'null',
              ':name'       => $name,
              ':location'   => $loc,
              ':latitude'   => $lat,
              ':longitude'  => $lon,
              ':website'    => $web,
              ':bandcamp'   => $bandcamp,
              ':facebook'   => $facebook,
              ':bio'        => $bio,
              ':image'      => $image,
              ':updated'    => 'null');

// Create sql statement
$sql = 'INSERT INTO artists VALUES (:id, :name, :location, :latitude, :longitude, :website, :bandcamp, :facebook, :bio, :image, :updated)';

// Run query
$query = $dbh->prepare($sql);
$query->execute($data);

// Disconnect from database
$dbh = null;

}

catch(PDOException $e) {
echo $e->getMessage();
}

データがテーブルに挿入されず、エラー メッセージも表示されません。ここで何か不足していますか?

4

2 に答える 2

3

これらの PDO メソッドを実行するときは、それらが を返さなかったことを確認し、返さfalseれた場合は処理して、コードが失敗しているかどうか、どこで失敗しているかを確認する必要があります。

'null'また、文字列値をidandupdatedフィールドに挿入しているようです。それが問題を引き起こしている可能性があります (これについては、マニュアル ページを参照してください)。また、挿入しないフィールドが問題ないことを確認してくださいnull

于 2012-05-17T00:20:35.407 に答える
0
':id'      => 'null',

テーブルに主キーと自動インクリメントがある場合、機能しない可能性があります

于 2012-06-13T21:15:55.093 に答える