2012-10-20 179 views
0

如果你們能幫, 我嘗試切換到新的PDO,但有一個困難時期......PDO無效參數()

爲什麼此代碼的工作:

include ('connect.php'); 

$sql = "SELECT * FROM GP_2012"; 
$conn = $DBH->query($sql); 

foreach ($conn as $row) 
    { 
    print $row['Prenom'] . ' ' . $row['Nom'] . '<br>' . 
    'Type: ' . $row['Type'] . '<br>' . 
    'Telephone: ' . $row['Tel'] . '<br>' . 
    'Mail: ' . $row['Mail'] . '<br>' . 
    'Bateau: ' . $row['Bateau'] . '<br>' . 
    '<br><br>'; 
    } 

而不是這一個:

include ('connect.php'); 

$sql = "SELECT * FROM GP_2012 WHERE Nom LIKE Pageot"; 
$conn = $DBH->query($sql); 

foreach ($conn as $row) 
    { 
    print $row['Prenom'] . ' ' . $row['Nom'] . '<br>' . 
    'Type: ' . $row['Type'] . '<br>' . 
    'Telephone: ' . $row['Tel'] . '<br>' . 
    'Mail: ' . $row['Mail'] . '<br>' . 
    'Bateau: ' . $row['Bateau'] . '<br>' . 
    '<br><br>'; 
    } 

我試圖在phpMyAdmin和這些查詢都工作,第二個應該表現出一個結果,而是我得到什麼,在我的錯誤日誌中我得到:提供 無效參數對於foreach()

+1

PDO設置爲[上錯誤拋出異常(http://us.php.net/manual/en/pdo.error-handling.php)。你的問題會變得明顯。 – DCoder

回答

3

你的SQL是錯誤的。

$sql = "SELECT * FROM GP_2012 WHERE Nom LIKE '%Pageot%'"; 

您可以設置例外模式,那麼異常將在錯誤拋出。

或者您需要檢查結果,如果返回false,請檢查錯誤信息。

+0

FML感謝 IM要去睡覺.... – user1107703

+0

oopss ... wasnt仔細閱讀問題 –

+0

@NullPointer?他的第一部分代碼起作用。 – xdazz