我有一个sql语句......
"SELECT o.orderID, p.productID, p.name, o.qty, p.mouldID FROM products AS p INNER JOIN orderedProducts AS o ON o.productID = p.productID WHERE o.orderID = '$id'";
当我在phpmyadmin中使用它来测试它时,它看起来像这样(我使用的是ID 56)
__________________________________________
|orderID|productID|name |qty |mouldID|
|56 |11 |newproduct |2000|4 |
|56 |12 |newproduct2|10 |5 |
|56 |13 |newproduct3|5 |6 |
但吐出的数组是:
Array ( [0] => 56 [orderID] => 56 [1] => 11 [productID] => 11 [2] => newproduct [name] => newproduct [3] => 2000 [qty] => 2000 [4] => 4 [mouldID] => 4 )
这不是我想要的数据,所以我试着看看如果把它放到表中会发生什么
它返回
0 | 56
orderID | 56
1 | 11
productID | 11
2 | newproduct
name | newproduct
3 | 2000
qty | 2000
4 | 4
mouldID | 4
显然出现了问题......
我使用mysql_fetch_array
将数据库中的数据导入数组......这可能是我做错了吗?
基本上我希望它看起来像数据库返回的第一个表。
任何想法......谢谢!
答案 0 :(得分:1)
mysql_fetch_XXX()
函数只返回下一行,而不是所有结果。如果你想要一个包含所有行的数组,你必须用循环构造它:
while ($row = mysql_fetch_assoc($query)) {
$results[] = $row;
}
var_dump($results);