我的sql代码在mysql中返回7行。 但是当我在php中检索它时,它返回一行。 如何检索sql给出的php中的所有数据[关闭]

I am a beginner and following is my sql code.

select temp1.service_number,temp1.serial_number, temp1.start_datetime, temp1.plate_number, text , temp1.staff_id
from (select t.service_number,t.serial_number, start_datetime, plate_number, staff_id
from trip t
where t.staff_id = 3685
and start_datetime between '2012-01-01' and '2013-12-01') as temp1
left outer join 
(select r.service_number, r.serial_number, r.text
from remark r) as temp2
on temp1.service_number = temp2.service_number and temp1.serial_number = temp2.serial_number;

As I run it, it returns 7 row. however, when I use that code in php,

$querytrip = "select temp1.service_number,temp1.serial_number, temp1.start_datetime, temp1.plate_number, temp2.text from (select t.service_number,t.serial_number, start_datetime, plate_number, staff_id from trip t where t.staff_id = '$staffid' and start_datetime between '$sdate' and '$edate') as temp1 left outer join (select r.service_number, r.serial_number, r.text from remark r) as temp2 on temp1.service_number = temp2.service_number and temp1.serial_number = temp2.serial_number";
            $resulttrip = mysql_query($querytrip);

the count($resulttrip) returns as 1.

Please help me!

To get the number of rows, you do mysql_num_rows($resulttrip), not count($resulttrip). To iterate over each row, you use mysql_fetch_assoc like so:

while ($result = mysql_fetch_assoc($resulttrip))
{
  echo $result['service_number'];
}

You can also use mysql_fetch_array and mysql_fetch_row rather than mysql_fetch_assoc,

Although you should be using the MySQL Improved Extension or PDO.