質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

21328閲覧

PHP(Laravel)で「[HY000] [1044]アクセスは、ユーザーのために拒否された」とエラー表示

kapimako

総合スコア39

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2015/01/12 12:50

PHP初心者です。フレームワークlaravelにsentry2をインストールした所、ローカルホスト画面でエラーが表示されました。
SQLSTATE[HY000] [1044] Access denied for user ''@'localhost' to database 'database'

*/
public function createConnection($dsn, array $config, array $options)
{
$username = array_get($config, 'root');

$password = array_get($config, 'abcd'); return new PDO($dsn, $username, $password, $options); }

因みに、以下ファイルのユーザ名、パスワードは上記と一致しています。(
C:\xampp\htdocs\project\app\config\database.php
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php

気になる点は、下記フォルダを移動したことです。何か原因がありますでしょうか?
C:\xampp\htdocs\project
C:\ユーザ名\project/

どなたかご教示いたけますと幸いです。どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

データベースログインユーザが対象のデータベースを参照する権限を持っていないからではないのでしょうか?
それか、ユーザーの設定がしっかり行われていない可能性も考えられます。
一度、mysql.users テーブルのユーザ情報を参照してみては如何でしょうか?

ちなみにですが、Mysqlの初期設定では、root@localhost でログインでパス無しだった気がしたのですが・・・
xampp環境のMysqlは初期ユーザ(root@localhost+パス付き)が設定されているのでしょうか?

投稿2015/01/15 05:57

takayukiinaba

総合スコア1158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kapimako

2015/01/18 02:28

ご回答ありがとうございます。 すみません…下記について具体的にどこのフォルダとファイルを見ればよろしいでしょうか。検索してもローカルに「mysql.users」が出てこず…教えていただけますでしょうか。 >mysql.users テーブルのユーザ情報を参照 >ちなみにですが、Mysqlの初期設定では、root@localhost でログインでパス無しだった気がしたのですが・・・ はい、そうでしたが、パスワード(abcd)はこちらで変更してみました。 権限に関係するあたり、こちらでも調べてみたいと思います。 お返事が遅くなり申し訳ありませんでした。体調不良で作業ができず、昨日復活しました。遅ればせながら、ご回答くださいまして、ありがとうございました。何か分かりましたらまたご教示くださいますようお願いいたします。
takayukiinaba

2015/01/18 12:25

こちらに関してですが、Mysqlのユーザ情報はmysqlにログインして確認します。 mysql に(root:パス無し)でログインして mysql > use mysql mysql > show tables; で確認すると、user テーブルに接続できます。 こちらに関しては、ユーザの情報を確認するのみで、ユーザの新規登録や変更を行う場合は、GRANT文を利用します。 GRANT ALL PRIVILEGES ON 【データベース名】.* TO 【ユーザ】@localhost IDENTIFIED BY '【パスワード】' WITH GRANT OPTION; FLUSH PRIVILEGES; 例: GRANT ALL PRIVILEGES ON example.* TO abcd@localhost IDENTIFIED BY 'password' WITH GRANT OPTION; FLUSH PRIVILEGES; 上記は、exampleというDBに、abcdと言うユーザでパスワードはpasswordでログインする様な内容です。 FLUSH PRIVILEGES; は、GRANT情報の反映?だったかな???
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問