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

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

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

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

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

Q&A

解決済

4回答

14730閲覧

PHPファイルからMySQLへの接続について教えてくださいm(_ _)m

hirotto57

総合スコア57

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

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

0グッド

1クリップ

投稿2015/07/16 06:39

PHPファイルからMySQLに接続したいのですが、下記エラーが出てしまいます。
何が原因なのでしょうか?

//データベースに接続
$host ='localhost'; //データベースのホスト名
$username = 'username'; //MySQLのユーザー名
$passwd = 'passwd'; //MySQLのパスワード
$dbname = 'sport'; //データベース名

$link = mysqli_connect($host,$username,$passwd ,$dbname);

エラー表示内容
Warning: mysqli_connect(): (28000/1045): Access denied for user 'username'@'localhost' (using password: YES)

データベース名、sportに相違はございません。
ご教示の程、何卒宜しくお願いします。

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

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

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

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

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

guest

回答4

0

ベストアンサー

そのエラーはユーザー名やパスワードが間違っている場合に起こります。
本当にそのユーザーが存在するのか、パスワードは合ってるか、などを確認して下さい。


ユーザー一覧を表示するには以下のSQLを実行します。

SQL

1select Host, User, Password from mysql.user;

ユーザーが存在するかは表示された一覧を見れば分かります。パスワードはハッシュ値なので、見たところで役に立ちません。設定したパスワードを忘れてしまった場合は、rootで入って設定し直す等して下さい。

パスワード設定は以下のSQLでできます。

SQL

1SET PASSWORD FOR 'ユーザー名'@'ホスト' = PASSWORD('パスワード');

投稿2015/07/16 06:43

編集2015/07/16 07:35
shiolier

総合スコア1156

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

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

hirotto57

2015/07/16 07:10

ご回答頂きありがとうございます。 MySQLのユーザー名、パスワードですが、ネットで調べましたが、 確認の仕方がわかりません。 どのような方法で確認すればよろしいでしょうか?
hirotto57

2015/07/16 10:17

ご回答頂きありがとうございます。 上記のSET PASSWORD FOR 'ユーザー名'@'ホスト' = PASSWORD('パスワード'); でパスワードを再設定しましたが、phpMyAdminにログインできなくなってしまいました。 「MySQL サーバに接続しようとしましたが拒否されました。config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください。」 ネットで調べたところ、config.inc.phpにもパスワードの設定をする必要があるとのことですが、そのconfig.inc.phpがロックされており開くことができません。 ロックを解除する方法を教えて頂けないでしょうか? 何卒宜しくお願いいたします。
guest

0

開発しているのは、
hirotto57様のPC上でしょうか?
それとも、レンタルサーバーでしょうか?

また、PCであればOSは、Windows/Mac/Linuxのどれでしょうか?
PC上で、Apache・PHP・Mysqlを使って開発されているのであれば、
$host/$username/passwordのどこかの記述が間違っている可能性が高いです。
PCでの開発であれば、$hsotをlocalhostを127.0.0.1にしてみたり、passwordに何も指定しなかったりと
色々と試してみてください。

それと、できればPDOを使ってDB接続することをおすすめします。
mysql関数はPHP5.5以降は非推奨となり、将来的には削除される予定ですので。

投稿2015/07/16 09:23

K_T_T_K

総合スコア231

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

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

0

レンタルサーバーをお使いですか??
それならばMySQL初期設定のメールか、管理画面に書いてあると思います。

投稿2015/07/16 08:20

AMK

総合スコア765

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

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

0

grant文でMySQLに接続用のユーザとパスワードを設定してますか?
やってたらどんなコマンドでやったか見せてください。それに間違いがありそうな気がします。

投稿2015/07/16 06:46

hintrarou

総合スコア162

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問