2009-12-22 43 views
2

我從PHP網站這個例子:PDO:如果我的主機是localhost:80,我必須在這裏放什麼?

<?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上,當我把我的本地站點,它看起來是這樣的:

http://localhost:80/mysite/index.php 

那麼究竟什麼會我有寫入

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); 

for host =?那是localhost,還是localhost:80?或者完全不同的東西?我的MySQL數據庫有端口號3306.是否相關?或者只是「localhost」完美無缺?

+0

你是否甚至運行過這個例子,它會工作,就好像你的MySQL與Web服務器安裝在同一臺機器上一樣。 – TravisO 2009-12-22 12:45:05

回答

4

你現在應該沒問題,假設MySQL運行在同一臺機器上。

端口80是你的web服務器(apache)運行的東西。 MySQL將運行在不同的端口上。如果您的MySQL服務器在默認端口上運行,那麼您可能不需要輸入端口號,並且您擁有的端口號可以正常工作。如果您安裝了MySQL以在不同的端口上運行,那麼您可能需要輸入端口號。另外,如果你有在端口80上運行的Apache,你甚至不需要在你的站點的URL中加入「:80」。由於端口80是HTTP的默認端口,因此瀏覽器將自動使用該端口。

3

MySQL服務器和HTTP服務器是在您的機器上運行的獨立程序。

URL中的80端口屬於HTTP服務器,而MySQL服務器則取另一個端口,通常爲3306

相關問題