1

PDO を使用して mySQL に接続しようとしています。

明らかな間違いを犯した場合はご容赦ください - 私はただ勉強しているだけです...

 <?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 スクリプトを解析しないのはなぜですか?

アップデート:

新しい 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 '
';
}

?>

更新:問題は解決しました...それはある種のファイルエンコーディングの問題でした。コードをコピーして新しいファイルに貼り付けると、完全に機能します。非常に奇妙な。

4

1 に答える 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
于 2012-09-15T09:07:06.593 に答える