2012-09-15 30 views
1

我想使用PDO連接到mySQL。DEBUG PDO連接和PHP輸出

請原諒我,如果我做了一個明顯的錯誤 - 我只是learining ...

<?php 

try { 
    $db_conn = new PDO('mysql:host=localhost;dbname=testdatabase','test', 'testpass'); 
} 
catch (PDOException $e) { 
    echo 'Could not connect to database'; 
} 

$stmt = $db_conn->query('SELECT * FROM PRODUCTS'); 

while ($row = $stmt->fetch()) { 
    echo '<pre>'; print_r($row); echo '<pre>'; 
} 

?> 

來自瀏覽器的輸出如下:

query('SELECT * FROM PRODUCTS'); while ($row = $stmt->fetch()) { echo ' 
'; print_r($row); echo ' 
'; 
} 

?> 

我做了什麼錯???爲什麼PHP不解析PHP腳本?

UPDATE:

如果我創建一個新的PHP文件,並運行phpinfo()函數;有用。

如果我貼的phpinfo()入上述代碼的頂部如下:

<?php 

phpinfo(); 

echo '<h1>PDO TEST</h1>'; 

try { 
    $db_conn = new PDO('mysql:host=localhost;dbname=testdatabase','test', 'testpass'); 
} 
catch (PDOException $e) { 
    echo 'Could not connect to database'; 
} 

$stmt = $db_conn->query('SELECT * FROM Products'); 

while ($row = $stmt->fetch()) { 
    echo '<pre>'; print_r($row); echo '<pre>'; 
} 

?> 

我得到以下輸出:

PDO TEST'; try { $db_conn = new PDO('mysql:host=localhost;dbname=testdatabase','test', 'testpass'); } catch (PDOException $e) { echo 'Could not connect to database'; } $stmt = $db_conn->query('SELECT * FROM Products'); while ($row = $stmt->fetch()) { echo ' 
'; print_r($row); echo ' 
'; 
} 

?> 

UPDATE: 問題解決了...這是某種文件編碼問題。當我將代碼複製並粘貼到新文件中時,它完美地工作。很奇怪。

+1

這段代碼對我來說看起來很好。問題在別處。 –

回答

2

打開httpd.conf文件並添加這一行內:

AddType application/x-httpd-php .php .phtml 

這使得你的PHP腳本由PHP解釋器執行。

Then restart apache server using /etc/init.d/apache2 or httpd restart 
+0

我在網站上安裝了wordpress ... PHP已經在執行了??? – Gravy

+0

你能告訴你的服務器配置嗎?或者製作一個小的php腳本並運行phpinfo(),並將結果粘貼到這裏。 – GBD

+0

我沒有粘貼這一切,但我認爲我已經粘貼了相關的東西... http://pastebin.com/YKUJK7fn – Gravy