2

そのため、XAMPPを使用してローカルホスト上に作成したmySQLデータベースへの接続に問題があります。DB自体は127.0.0.1で正常にセットアップされていますが、XAMPPで起動するには、ポート8000​​(80ではなく)を使用する必要がありました。

  $con = mysql_connect("localhost:8000","","");
 if (!$con) {
   die('Connection failed.' . mysql_error());
 }

上記は機能しません。ブラウザは数秒後にウェブページを表示できないと言ってタイムアウトします(ダイメッセージが表示されないことに注意してください)。私も127.0.0.1:8000を試しましたが、うまくいきませんでした。phpMyAdminでユーザーを作成し、資格情報を入力しても、何も達成されませんでした。

ポートを取り出して使用する場合:

$con = mysql_connect("localhost","","");

これは接続しますが、適切なサーバーに接続しているとは思わないため、データベースを選択できないようです。

何か案は?前もって感謝します!

4

4 に答える 4

3
  1. mysql_*は使用しないでください。非推奨です。
  2. ポート8000​​は、mysqlではなくサーバー用です。デフォルトのmysqlポート3306

PDOを使用する方が良い

http://www.php.net/manual/en/pdo.construct.php

于 2012-11-24T19:44:16.120 に答える
1

MySQLのポートは3306です。ただし、phpコードでこれを使用する必要はありません。

データベースを選択できない理由は、スクリプトでデータベースを指定したことがないためです。したがって、mysql_select_db関数を試してください。

そのようです:

mysql_connect('localhost','user', 'pass');
mysql_select_db('database_name');

より大規模なシステムでこのコードを使用する場合は、madara-uchihaのようなプリペアドステートメントを使用することをお勧めします。これらの関数がアプリケーションに減価償却通知を出力するまで、長くはかからないでしょう;)

于 2012-11-24T19:47:33.037 に答える
1

ポート8000​​を削除します。これはmysqlポートではありません。

于 2012-11-24T19:53:56.087 に答える
1

mysqliを使用することもできます

<?php $con = new mysqli("localhost", "username", "password", "dbName");
if ($con->connect_errno) {
echo "Failed to connect to MySQL: (".$con->connect_errno.")".$con->connect_error;
}
?>
于 2012-11-24T19:54:55.423 に答える