私のホストがローカルホストの場合:PDO 80、私はここで入れるために何がありますか?
質問
私は、PHPのサイトからこの例を得ます:
<?php
try {
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
foreach($dbh->query('SELECT * from FOO') as $row) {
print_r($row);
}
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
私は、Mac上のMAMPを使用して、私は私のローカルサイトを呼び出すときには、このようになります:
http://localhost:80/mysite/index.php
まさに私が
で記述しなければならないので、どのような$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
ホストの=?それはlocalhostになり、またはそれをlocalhostになります80?あるいは全く異なる何か?私のMySQLのDBには、ポート番号3306は、その関連性がある持っていますか?それとも、 "localhost" をされて完全に罰金?
解決
あなたはMySQLが同じマシン上で実行されているとすると、問題ないはずですが、今が何をしています。
ポート80は、Webサーバ(Apacheが)実行されているものです。 MySQLは別のポートで実行されます。 MySQLサーバがデフォルトのポートで実行されている場合、あなたはおそらくにポート番号を入れる必要はありませんし、何を持っていることは正常に動作します。あなたがが別のポートで実行するようにMySQLをインストールした場合、あなたはおそらく、ポート番号を入れなければならないでしょう。
あなたのサイトのURLに「80」は、ポート80上で実行されているのapacheしている場合は、また、あなたも置く必要はありません。ポート80はHTTPのデフォルトポートであるので、ブラウザが自動的にそれを使用します。
他のヒント
MySQLサーバやHTTPサーバは、マシン上で実行している別のプログラムです。
MySQLサーバが、一方で、別のポート、通常3306
をとりながら、URLでの80ポートは、HTTPサーバに属します。
所属していません StackOverflow