2013-05-21 63 views
-2

我已經建議從不推薦的MySQL遷移到MySQLi或PDO,我終於找到了它,因爲它可以幫助我的項目,而不會浪費太多時間。我在一些很棒的文章和網站上閱讀過很多,但是我希望得到關於如何使用PDO讀取數組的最佳建議,我可以使用while循環做到這一點,但我不喜歡它,我將如何轉換此當前代碼到PDO。對PDO的MySQL查詢

public function User_Details($_iD){ 
    $_iD = mysql_real_escape_string($_iD); 
    $query="SELECT _iD,_iPassword,_iEmail,_iNickname,_iUsername,_iProfilePicture,_iFriendCount FROM users WHERE _iD='$_iD' AND _iStatus='1'"; 
    $result = mysql_query($query) or die(mysql_error()); 
    $data = mysql_fetch_array($result) or die(mysql_error()); 
return $data; 
} 

我能夠用while循環,但正如我所說,這不是我感興趣的,除非它是一個更好的選擇。

PDO:

$sql = "SELECT _iD,_iPassword,_iEmail,_iNickname,_iUsername,_iProfilePicture,_iFriendCount FROM users WHERE _iStatus='1'"; 
    foreach ($db->query($sql) as $row){ 
     print $row['_iD'] .' - '. $row['_iUsername'] . '<br />'; 
    } 
+0

對不起,但這真的不是一個有效的問題。您希望我們爲您提供更好的解決方案嗎? –

+0

webmaster777回答了我完美的要求。謝謝。 – iBrazilian2

回答

3

這也將是明智的,其實學習PDO是如何從舊的方法,而不是試圖將其與新的工具舊的方式不同。 PDO提供的其中一件事是創建準備好的statements,您可以執行它並以各種方式獲取。我認爲fetchAll方法正是你正在尋找的。

+0

謝謝,這正是我需要知道的,我很欣賞你的答案。 – iBrazilian2