【发布时间】:2011-02-09 23:51:18
【问题描述】:
您好,我正在尝试查询我的数据库以获取共享相同“ITEMID”的所有记录,该表是对数据库中的项目执行的操作的事务列表。
我检查了 phpmyadmin 中的 SQL 查询,它工作正常,但是当我运行 php 代码时,它每次都会忽略第一条记录。这是我的代码
<?php
// Get the quantity of each item
$sql1 = 'SELECT `IDPENTERED` , `ITEMID` , `QTY` , `VALUE` FROM `tblpieceentered`
WHERE `ITEMID` =307 ' ;
echo $sql1."<br>";
// Retrieve all the data from the table
$result1 = mysql_query($sql1)
or die(mysql_error());
// store the record of the table into $row1
$row1 = mysql_fetch_array( $result1 );
$i = 1;
$num = mysql_num_rows ($result1);
echo "Num rows: $num <br>";
while ($row1 = mysql_fetch_assoc ( $result1)) {
$data_array[$i] = $row1;
$i++;
}
echo "<pre>";
print_r ($data_array);
echo "</pre>";
?>
结果是:
SELECT `IDPENTERED` , `ITEMID` , `QTY` , `VALUE` FROM `tblpieceentered` WHERE `ITEMID` =307
Num rows: 5
Array
(
[1] => Array
(
[IDPENTERED] => 1999
[ITEMID] => 307
[QTY] => -1
[VALUE] => -0.21
)
[2] => Array
(
[IDPENTERED] => 2507
[ITEMID] => 307
[QTY] => -10
[VALUE] => -2.1
)
[3] => Array
(
[IDPENTERED] => 3039
[ITEMID] => 307
[QTY] => 1
[VALUE] => 0.21
)
[4] => Array
(
[IDPENTERED] => 3040
[ITEMID] => 307
[QTY] => -1
[VALUE] => -0.21
)
)
有什么想法吗?
谢谢 肖恩
【问题讨论】:
-
我的回答之外的主题补充:除非您希望您的数组从 '1' 开始,否则您可以使用
$data_array[] = $row并跳过 $i 计数器。它将每一行追加到数组的末尾。