データベースのテーブルにutimeという行をデータ型をdatatimeにして作成して
phpで
<?php
ini_set('display_errors',1);//画面にエラーを表示
error_reporting(E_ALL);//全ての種類のエラーを表示
session_start();
if (isset($_POST['name'])) {
$pdo = new PDO('mysql:host=localhost;dbname=appdata;charset=utf8','ユーザー名','パスワード');
$name = $_POST['name'];//ユーザーから受け取った値を変数に入れる
$data = new DataTime();
$data = $data -> format('Y-m-d H:i:s');
$stmt = $pdo -> prepare("INSERT INTO mannerdata(uname,utime) VALUES(:name,:utime)");
$stmt -> bindValue(':name', $name, PDO::PARAM_STR);
$stmt -> bindValue(':utime', $data, PDO::PARAM_STR);
$stmt -> execute();//データベースの登録を実行
$pdo = NULL;//データベース接続を解除
}
?>
というように書きました。
sql文はphpmyadminを使っており
CREATE TABLE IF NOT EXISTS 'mannerdata' (
'uname' archer(50) NOT NULL,
'utime' datatime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
となっています。
phpからデータベースのテーブルに日付と時刻データを保存したいです。
試しにunameという数値を格納している行だけにしてutimeを消すとうまく動作しますが
utimeを入れるとphpのログは確認できますがデータベースに値が何も入っていません。
どこをどのように直したら良いでしょうか。