phpMyAdminにて、ユーザーを追加し今回、
ファイル名「list.php」にて
php
1コード 2<?php 3$user = "suzuki"; 4$PASS = "0901";⇒小文字のpに変えました。 5$dbh = new PDO('mysql:host=localhost;dbname=db1;charset=utf8', $user, $pass); 6$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 7$sql = "SELECT * FROM recipes"; 8$stmt = $dbh->query($sql); 9$result = $stmt->fetchAll(PDO::FETCH_ASSOC); 10print_r($result); 11$dbh = null; 12?>
で、データベースとの接続終了をしようとしたところ
Notice: Undefined variable: pass in C:\xampp\htdocs\yasashiiphp\list.php on line 4
Fatal error: Uncaught PDOException: SQLSTATE[HY000] [1045] Access denied for user 'suzuki'@'localhost' (using password: NO) in C:\xampp\htdocs\yasashiiphp\list.php:4 Stack trace: #0 C:\xampp\htdocs\yasashiiphp\list.php(4): PDO->__construct('mysql:host=loca...', 'suzuki', NULL) #1 {main} thrown in C:\xampp\htdocs\yasashiiphp\list.php on line 4
というエラーが出ます。
ユーザー名かパスワードに間違いがあるというエラーみたいですが、
PODで接続する際の引数や、使用している$user、$passを確認したのですが
パスワードに関しては、変更もしてみました。
エラーメッセージが変わりません。
データベースのユーザーの権限は、権限移譲がいいえで
グローバル特権でデータにはすべてチェックが入っています。
本来出るべきメッセージは
phpMyAdminにて、データベース名db1で作成した、データベースの情報が出る予定です。
【追記】
小文字にかえたところ違うエラーが出ました。
Fatal error: Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'db1.recipes' doesn't exist in C:\xampp\htdocs\yasashiiphp\list.php:7 Stack trace: #0 C:\xampp\htdocs\yasashiiphp\list.php(7): PDO->query('SELECT * FROM r...') #1 {main} thrown in C:\xampp\htdocs\yasashiiphp\list.php on line 7
SQL文に間違いがあるエラーで、テーブル名やSQL文を間違えた場合の表示が出るみたいですが
不明です。
こちらのエラーの改善点を教えていただけますでしょうか。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/16 04:56
2019/07/16 04:59
2019/07/16 04:59