2011-07-19 54 views
0

我在PHP中創建了一個訪問MySQL數據庫並將葡萄酒數據提取到網頁上的葡萄酒商店。然而,在得到它一切正常工作後,我現在遇到了PDO構造錯誤,不知道爲什麼。PDO構造錯誤 - PHP

的錯誤如下:

Warning: PDO::__construct() [pdo.--construct]: [2002] A connection attempt failed because the connected party did not (trying to connect via HOSTNAME) in C:\webdev\shop\selectfromwines.php on line 5

這似乎涉及到下面的一段代碼:

$database = new PDO('mysql:host=HOSTNAME; dbname=co525', 'co525', 'co525'); 

任何想法,我可能會去錯了嗎?

P

+0

加試捕,看看如果u有錯誤,比如 query('SELECT * from FOO')as $ row){ print_r($ row); } $ dbh = null; (PDOException $ e){ print「Error !:」。 $ e-> getMessage()。 「
」; die(); } –

+0

'HOSTNAME'是代碼中的值嗎?也就是說,你有一個字符串'HOSTNAME'或者一個真正的主機名(比如'127.0.0.1'或'localhost')嗎? – binaryLV

+0

我在那裏有實際的主機名。我只是嘗試嘗試趕上,它給了我同樣的錯誤。 – user832488

回答

0

是HOSTNAME的真實主機名嗎?如果沒有 - 使用正確的地址。如果你有本地數據庫,試試127.0.0.1或本地主機

+0

不,對不起,主機名是我剛纔改變它爲這個消息的目的的真正的主機名。 – user832488

+0

你可以嘗試沒有空間的dsn嗎?像這樣:'mysql:host = HOSTNAME; dbname = co525' –

+0

恐怕它沒有效果。還是一樣的錯誤。 – user832488

0

打開你的php.ini,並設置如下:

pdo_mysql.default_socket=」/opt/lampp/var/mysql/mysql.sock」 
+0

我在哪裏可以找到php.ini? – user832488

+0

@ user832488它在服務器中的默認值。創建一個新的php.ini並使用上面的代碼並將其保存在服務器 – jeni

+0

要查找PHP使用的php.ini,請使用'var_dump(php_ini_loaded_file());'。 – binaryLV