PHPの中でsql文を入れています。
フィールドに入れる値の順序と型は確認して、合わせています。
しかし、sql文に関してエラーが出力されました。
エラー内容についてどなたかご教授ください。
実行結果として、下記メッセージが出力されました。
object(PDOException)#3 (8) { ["message":protected]=> string(78) "SQLSTATE[42S22]: Column not found: 1054 Unknown column 'danjo' in 'field list'" ["string":"Exception":private]=> string(0) "" ["code":protected]=> string(5) "42S22" ["file":protected]=> string(41) "
実行したコードのSQL文は下記となります。
$lastmembercode=0;
$dsn='mysql:dbname=ranzan;host=localhost;charset=utf8';
$user='root';
$password='';
$dbh=new PDO($dsn,$user,$password);
$dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
try {
$sql='INSERT INTO student (password,name,email,postal1,postal2,address,tel,danjo,born) VALUES (?,?,?,?,?,?,?,?,?)';
$stmt=$dbh->prepare($sql);
$data=array();
$data[]=md5($password);
$data[]=$name;
$data[]=$email;
$data[]=$postal1;
$data[]=$postal2;
$data[]=$address;
$data[]=$tel;
if($danjo=='dan')
{
$data[]=1;
}
else
{
$data[]=2;
}
$data[]=$born;
$stmt->execute($data);
$sql='SELECT LAST_INSERT_ID()'; } catch (Exception $e) { var_dump($e);
}
$stmt=$dbh->prepare($sql); $stmt->execute(); $rec=$stmt->fetch(PDO::FETCH_ASSOC); $lastmembercode=$rec['LAST_INSERT_ID()'];
$dbh=null;
print '会員登録が完了いたしました。<br />';
回答2件
あなたの回答
tips
プレビュー