前提・実現したいこと
phpにてECサイトを製作する練習をしています。そのなかでユーザー管理ができるようなページを作りたいのですが、下記のようなphpで実行すると以下のようなエラーメッセージが表示されます。データベース名やパスワードは間違っていないのですが、どこがおかしいのか、よければ教えていただきたいです。
発生している問題・エラーメッセージ
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'yoshida' in 'field list'' in /home/codecamp30768/htdocs/php/23/bookstore_user_admin.php:17 Stack trace: #0 /home/codecamp30768/htdocs/php/23/bookstore_user_admin.php(17): PDO->prepare('INSERT INTO use...') #1 {main} thrown in /home/codecamp30768/htdocs/php/23/bookstore_user_admin.php on line 17
該当のソースコード
$dsn = 'mysql:dbname='.$dbname.';host='.$host.';charset='.$charset; $dbh = new PDO($dsn, $username, $password, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8mb4')); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $sql = 'INSERT INTO user_name (id , name , create_time ) VALUES(1, yoshida , NOW())'; $stmt = $dbh->prepare($sql); $stmt->execute(); $sql = 'SELECT * FROM user_name ; '; $stmt = $dbh->prepare($sql); $stmt->execute(); $rows = $stmt->fetchAll(); // 1行ずつ結果を配列で取得 foreach ($rows as $row) { $data[] = $row;
試したこと
基本的に上記にかいたコードは別のページ作成の際に作ったものをそのままもってきているので動作はするはずだと考えられます。綴りも確認しましたが、見る範囲ではあっているはずです。
回答4件
あなたの回答
tips
プレビュー