編輯: 第一個腳本得到沒有錯誤,只有一個白色的屏幕。 所以我測試了一段時間,這裏的結果。 (並學會了基本知識......)從PDO沒有連接到MySQL的PHP
Fatal error: Call to a member function rowCount() on a non-object in /var/www/tabelle/pizza/test_pdo3.php on line 11
首先是PDO版本,之後是一個沒有PDO的版本。
<?php
//Connect
$db = new PDO('mysql:host=localhost;dbname=;pizzadb3', 'auser', 'passw',
array('charset'=>'utf8'));
//Ausführen des Querys mit möglicher Fehlerbehandlung per try, catch
$stmt = $db->query('select * from pizzeria_table');
//Anzahl ermitteln
$row_count = $stmt->rowCount();
echo 'Anzahl: '.$row_count.'<br/>';
//Jeder Datensatz aus $stmt wird zur Ausgabe in ein temp-Array $row gespeichert
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['laden_name'].'/'.$row['vorwahl'].'<br/>';
}
?>
這個版本做什麼做。
<?php
//Connect
$conn = mysql_connect('localhost', 'user', 'passw');
mysql_select_db('pizzadb3', $conn);
mysql_set_charset('UTF-8', $conn);
$sql = "select * from pizzeria_table";
//Ausführen des Statements und evtl. Fehlerbehandlung mit 'die'
$result = mysql_query($sql) or die (mysql_error());
//Anzahl der Datensätze ermitteln
$row_count = mysql_num_rows($result);
echo 'Anzahl: '.$row_count.'<br/>';
//Jeder Datensatz aus $result wird zur Ausgabe in ein temp-Array $row gespeichert
while($row = mysql_fetch_assoc($result)) {
echo $row['laden_name'].'/'.$row['vorwahl'].'<br/>';
}
?>
我該怎麼辦?
你看着由PHP代碼生成的HTML代碼?你確定你應該看到什麼嗎?桌子上有內容嗎?你有沒有試過製作一個只包含核心功能的小程序,所以測試更容易?你試過什麼了? – jornane
與一個小的測試文件,並沒有PDO一切正常。在大文件中,您可以看到一個按鈕和一個帶有一個單元的空表。我只是用PDO試着一個文件。 – gutschy
打開PDO例外,[如此處所述](http://php.net/manual/en/pdo.error-handling.php)。 '$ dbh-> setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION);'然後看看你是否有任何錯誤。 –