質問
- PHPを使ってデータベースに接続したいのですが、
-
本文:
PHPでデータベースに接続したいのですが、
サーバー情報$dsn=以下の書き方がわかりません。
$pdo=new PDO($dsn, $user, $pass);
で接続しようとしても、Fatal error: Uncaught exception
'PDOException' with message 'SQLSTATE[00000]
[1130] Host '****.webcrow-php.netowl.jp' is not
allowed to connect to this MySQL server' ・・・
とエラーになってしまいます。 - 緊急度:急ぎ投稿者:ばんどうたろうさん投稿時間:2016/10/13 22:33
回答 No.5308
-
本文:
>****.webcrow-php.netowl.jp
おそらく、mysql1.webcrow-php.netowl.jp
のように、mysqlから始まっているはず。
sv1.webcrow-php.netowl.jp
のようなものを指定してるのなら間違い
MYSQLのサーバーは、レンタルサーバーと別になってるみたい。 - 投稿者:k-tanさん 投稿時間:2016/10/14 06:39
質問者からのコメント
k-tanさん、重ね重ねご指導ありがとうございます。
ここも、初心者として迷うところでした。
ユーザー名の隣のホストなのか、
MySQLホスト名なのか、
何度もPHPコードを書き換えて試していました。
スッキリしました。ありがとうございました。
回答 No.5307
この回答がベストアンサーです
■
実際に以下のコードを設定すると、接続できました。
<?php
$dsn = 'mysql:host=mysql1.webcrow-php.netowl.jp;dbname=xx_test';
$username = 'xx_user';
$password = 'passxx';
$dbh = new PDO($dsn, $username, $password);
?>
dbnameは、データベース名を指定
http://php.net/manual/ja/ref.pdo-mysql.connection.php
■
接続情報は、 ウェブクロウのデータベース設定のところに書いてある通りです。
あと、データベース作成、ユーサーユーザー作成、データベースにユーサー割り当てなどの作業が終っていること前提です
http://www.minibird.jp/man/homepage_database_setting.php
上記はミニバードのマニュアルですが、操作はほぼ一緒。
■
外部から、ウェブクロウのMYSQLには接続できないので・・。
〇 ウェブクロウのレンタルサーバー上のPHP
× ローカルPC上のPHP
質問者からのコメント
k-tanさん、ご指導ありがとうございます。
k-tanさんの示してくださったコードから、
$dbnameと$usernameが同じ名前ではいけないと気づきました。
Netowlメンバー管理ツールに戻り、
データベース名とユーザー名が異なるように直し、
あらためてPHPコードを書きました。
おかげさまでつながりました。
ありがとうございました。