2015-05-05 74 views
0

我需要顯示數據庫中的某些特定的行和列PHP PDO - 顯示特定的行和列

// my query 
$products = $conn->prepare("SELECT * FROM products"); 
$products->execute(); 
$row_products = $products->fetch(PDO::FETCH_ASSOC); 
$totalRows_products=$products->rowCount(); 

這表明1號產品

echo $row_products->name; 
echo $row_products->value;` 

但我需要表現出一些特定的行
我不能使用DO或一段時間,因爲它不能順序
這樣的事情,但它不工作:

My 3rd product is: <?php echo $row_products[2]->name; ?> 
and my 6th product is: <?php echo $row_products[5]->name; ?> 
+1

什麼是您的具體要求是什麼? – Markus

回答

0

您可以使用->fetchAll而不是->fetch

+2

這個答案的一些解釋會對這位提問者有所幫助,還有其他人會在稍後找到這個答案 – RiggsFolly

0

您可以通過$products->fetchAll更換$products->fetch讓所有的記錄:

<?php 
$products = $conn->prepare("SELECT * FROM products"); 
$products->execute(); 
$row_products = $products->fetchAll(PDO::FETCH_ASSOC); 
$totalRows_products = count($row_products): 

// $row_products contains all the rows. You can even loop : 
for ($i = 0; $i < $totalRows_products; ++$i) 
{ 
    echo 'Row n° '.($i + 1).' : '; 
    echo $row_products[$i]->name.' '.$row_products[$i]->value; 
} 
0

感謝FHanisch和平流-Luin使用fetchAll你的答案

是不夠的。

我不得不改變PDO::FETCH_ASSOCPDO::FETCH_OBJ

<?php 
$products = $conn->prepare("SELECT * FROM products"); 
$products->execute(); 
$row_products = $products->fetchAll(PDO::FETCH_OBJ); 
$totalRows_products=$products->rowCount(); 

echo 'My 6th product: '.$row_products[5]->name; 
?>