php循环通过sql结果

时间:2012-08-31 06:56:47

标签: php mysql

我有一个名为sales_product的表格,其中包含

sales_product_id, sales_id, type, class, age

我在php中有一个查询说

$sql = "SELECT * from sales_product WHERE sales_id = " . $_GET['sales_id];

假设此查询返回两行。

$result = mysql_query($sql);

如何遍历此结果并保存在数组中,以便稍后我可以检索

之类的数据
echo $sales_product[$i]['sales_product_id'];
echo $sales_product[$i]['sales_product_id'];
........

7 个答案:

答案 0 :(得分:4)

mysql_fetch_assoc循环中的while

$result = mysql_query($sql);
$rows[] = array();

while ( $row = mysql_fetch_assoc($result) ) {
    echo $row['sales_product_id'];
    $rows[] = $row;
}

var_dump($rows);

答案 1 :(得分:1)

使用mysql_fetch_assoc

while ($row = mysql_fetch_assoc($result)) {
    echo $row["sales_product_id"];
}

答案 2 :(得分:0)

看看

mysql_fetch_array();

注意

不鼓励使用此扩展程序。相反,应该使用MySQLi或PDO_MySQL扩展。另请参阅MySQL:选择API指南和相关的常见问题解答以获取更多信息。该功能的替代方案包括:

mysqli_fetch_array()

PDOStatement::fetch()

答案 3 :(得分:0)

试试这个,

$result = mysql_query($sql);
while ( $row = mysql_fetch_assoc($result) ) {
    echo $row['columnName'];
}

如果你需要索引

,请使用mysql_fetch_array()

答案 4 :(得分:0)

检查一下。

$sql="SELECT sales_product_id, sales_id, type, class, age From sales_product";
$sales= $db->query($sql);
while($sale = $db->fetchByAssoc($sales))
{
    echo $sales['sales_product_id'];
    echo $sales['type'];
 // here instead echo uyou will add data in your array

}

答案 5 :(得分:0)

这样的东西应该有效,这将为您提供您请求的格式(未经测试):

while($row = mysql_fetch_assoc($result)) {
    $sales_product[] = $row;
}

答案 6 :(得分:0)

由于mysql_已被声明已弃用,因此我将用
回答你的问题 mysqli_ *扩展

//Prepare an SQL statement for execution
$stmt = $mysqli->prepare("SELECT * from sales_product WHERE sales_id = ?");

//bind parameter to the prepared statement      
$stmt->bind_param("i", $_GET['sales_id]);

//execute it 
$stmt->execute();

//store the result  
$result = $stmt->get_result();

//loop through the  result set
while ($myrow = $result->fetch_assoc()) 
{

      $salesIds[]  = $myrow["sales_product_id"];

}

有关更多信息,请参阅php文档 感谢