2012-05-08 93 views
1

$ pKeyArray只打印符合WHERE子句的數據庫的第一行,爲什麼不顯示符合WHERE子句的所有行,我不想將它放在任何循環中,我只需要是所有行的P_Key數組。Select query fetch first row only

$getPKey = "SELECT P_Key FROM likersTable WHERE executed=0"; 
$PKeyDetails = mysqli_query($dbConnect,$getPKey) 
       or die('Some error in post id'); 
$pKeyArray = mysqli_fetch_array($PKeyDetails); 
print_r($pKeyArray); 
+1

你肯定有不止一個結果爲查詢?我看起來很好。 –

+0

是的,它應該顯示4行 –

回答

1

使用mysqli_fetch_all

$array = mysqli_fetch_all($PKeyDetails); 
+0

致命錯誤:調用未定義的函數mysqli_fetch_all() –

+0

您需要PHP> = 5.3並且需要使用MySQL本地驅動程序。 – nickb

+0

任何其他出路?實際上,通過這我會得到一個數組,我想進一步用戶WHERE IN子句,如果你可以幫助我的單一查詢爲 –

2

你需要調用mysqli_fetch_array()每一行。

while ($pKeyArray = mysqli_fetch_array($PKeyDetails)) { 
    print_r($pKeyArray); 
} 
0

您必須使用循環,因爲mysqli_fetch_*()函數每次調用只返回一行。

使用此代碼:

$getPKey = "SELECT P_Key FROM likersTable WHERE executed=0"; 
$PKeyDetails = mysqli_query($dbConnect,$getPKey) 
       or die('Some error in post id'); 

while ($row=mysqli_fetch_array($PKeyDetails)) 
{ 
    // Do something with $row 
} 

或者使用mysqli_fetch_all()

$result = mysqli_fetch_all($PKeyDetails, MYSQLI_ASSOC); // or use MYSQLI_NUM 
+0

mysqli_fetch_all()給了一個錯誤致命錯誤:調用未定義功能mysqli_fetch_all() –

+0

你有PHP> = 5.3.0? – ComFreek

+0

這是.... 5.2.17 –

0
while($pKeyArray = mysqli_fetch_array($PKeyDetails)) { 
    print_r($pKeyArray); 
} 
相關問題