- ベストアンサー
PHPからMySQLの起動について
- PHPからMySQLの起動について困っています。レンタルサーバーでの設定方法を教えてください。
- MySQLデータベースの起動方法について教えてください。レンタルサーバーの設定についても知りたいです。
- PHPでMySQLデータベースの接続設定ができません。どのようにすれば正しく接続できるでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
MySQLサーバの起動処理ではなく、MySQLサーバへの接続処理ですね。 > まずレンタルサーバーのドメインを「abc.com」としています。 > これに対するユーザー名が「def」、パスワードが「ghi」です。 これはFTP接続や作成したHTMLをアップロードするために使用する情報ですか? だとしたらこれは関係ありません。 > そしてMySQLデータベースは「jkl_m」,「jkl_n」の2つを設けていて > (phpMyAdminで作成しました)MySQLユーザ名が「opq」、パスワードが「rst」です。 MySQLサーバのアドレスとポート番号が何か指定されていませんか? ポート番号はMySQLのデフォルトポートを使い、 Webサーバと同じサーバにMySQLサーバが入っていると想定すると、 <?php //接続処理 $link = mysql_connect("localhost", "opq", "rst"); //MySQLサーバがexample.com ポートに10000と指定されていた場合 //$link = mysql_connect("example.com:10000", "opq", "rst"); if (!$link) { die("接続できません: " . mysql_error())); } //使用するデータベースを指定する $db_selected = mysql_select_db("jkl_m", $link); if (!db_selected) { die("データベースが見つかりません: " . mysql_error()); } //ここから処理開始 //処理が終了したら閉じる mysql_close($link); 1.mysql_connect()で接続し、mysql_select_db()で使用するデータベースを選択し、 2.mysql_query()でMySQLサーバに問い合わせをし、 3.問い合わせ結果を必要に応じてmysql_fetch系の関数で取得し、 4.上記で取得したデータの使用が終わったらmysql_free_result()でメモリを開放し、 5.全ての処理が終わったらmysql_close()で接続を閉じる。 と、こういう流れになります。 http://www.php.net/manual/ja/mysql.examples-basic.php
その他の回答 (2)
- goomooku
- ベストアンサー率57% (8/14)
データベースを提供しているところによって異なるのかも知れませんが、私自身は、 $sqlid = mysql_connect("abc.com","def","ghi"); mysql_select_db("jkl_m",$sqlid); で、正常に起動しています。このあと、 $sql = "なんらかのSQL文"; $q = mysql_query($sql,$sqlid) or die("dError"); $row = mysql_fetch_assoc($q); として、値を取得しています。
- honoka-cha
- ベストアンサー率54% (40/73)
abc.comがホスト名を兼ねているのかどうか不明ですが、 mysql_connect("abc.com","opq","rst"); か、 mysql_connect("ホスト名.abc.com","opq","rst"); か、 mysql_connect("localhost","opq","rst"); じゃないですか。 それでもだめならMySQLのrootユーザを使っちゃって、 mysql_connect("abc.com","root","ghi"); か、 mysql_connect("abc.com","root","MySqlのrootのパスワード"); あたり。rootを使うのはセキュリティ上良くないけどテストとして。
お礼
mysql_connect("localhost","opq","rst"); ↑これでうまくいきました。 ありがとうございます。
お礼
$link = mysql_connect("localhost", "opq", "rst"); (中略) $db_selected = mysql_select_db("jkl_m", $link); ↑これでうまくいきました。 レンタルサーバーはWebサーバとMySQLサーバ共に同じところに申し込んでいるので(一つの契約ですので)、Webサーバと同じサーバにMySQLサーバが入っているはずなのですが、 「MySQLサーバのアドレスとポート番号」については、私の見たところ表示がありませんでした。 探し方が悪いのかも知れません。 それから、「MySQLサーバの起動処理ではなく、MySQLサーバへの接続処理ですね。」 その通りです。用語は正確に使わなければいけませんね。留意いたします。 ありがとうございました。