2016-04-23 12 views
1

私は架空の保育施設で子供のチェックイン時間を挿入するSQLクエリを作成しようとしています。ここに私のクエリコードの要約版は、次のとおりです。PHPを使用してMYSQLデータベースに日付と時刻を挿入できません

$childFirstName = $_POST['childFirstName']; 
$childLastName = $_POST['childLastName']; 

$now = new DateTime(); 
$nowDate = $now->format('m-d-Y'); 
$nowTime = $now->format('h:i'); 


$sql_childID = "SELECT id FROM child 
       WHERE firstName = '$childFirstName' 
       AND lastName = '$childLastName'"; 
$result = $pdo->query($sql_childID); 
$row = $result->fetch(); 


$sql = "INSERT INTO checkinout(date, in, child_id) VALUES(?,?,?)"; 
    $statement = $pdo->prepare($sql); 
    $statement->bindValue(1, $nowDate); 
    $statement->bindValue(2, $nowTime); 
    $statement->bindValue(3, $row['id']); 
    $statement->execute(); 

checkinoutテーブルは列に日付のためのVARCHARデータ型を使用しています。もともとはDATETIMEを使用するように設定されていましたが、同じエラーが発生しました。今、私は以下のエラーが返されます

...

enter image description here

あなたは私の値は、私は彼らがしたい方法で渡さなっているエラーメッセージから見ることができますが、私はしないでください私の構文エラーがどこにあるのかを理解する。

答えて

3

フィールド名はバッククォートで囲みます。それらのうちの2つは、予約語(datein)は次のとおりです。

$sql = "INSERT INTO checkinout(`date`, `in`, `child_id`) VALUES(?,?,?)"; 

https://dev.mysql.com/doc/refman/5.5/en/keywords.html

+0

ちょうど今バッククォートを除き、リンク... – Brian

+0

同じエラーが表示され、取得し... – slickset

+0

うーん:\あなたはそれが同じエラーだと確信していますか? –

関連する問題