当我在phpmyadmin中的$ Date中运行代码时,它会返回正确的行数但在页面上由于某种原因它永远不会显示第一行,我知道编号因为我的笔记本电脑ID不同而没有关闭对于这两行
function select_History_Date($link){
$status = '';
$i = 1;
$date = "SELECT Student_Id, Loaner_Laptop_Id, HDD_Id, "
. "Phone_Id, date_returned "
. "FROM equipment_history WHERE Loaner_Laptop_Id "
. "IS NOT NULL OR HDD_Id IS NOT NULL OR Phone_Id IS NOT NULL";
$ret = mysqli_query($link, $date);
$row1 = mysqli_fetch_array($ret, MYSQLI_ASSOC);
if (!$ret) {
die('Could not execute select statement:' . mysqli_errno($link));
} else {
while ($row1 = mysqli_fetch_array($ret, MYSQLI_ASSOC)) {
$status .= '<tr>';
$status .= '<td>' . $i . '</td>';
if (is_null($row1['date_returned']) && is_null($row1['HDD_Id']) && is_null($row1['Phone_Id'])){
$status .= '<td><a href="ReturnLaptop.php?laptopId=' .
$row1['Loaner_Laptop_Id'] . '&studentId='.
$row1['Student_Id']. '">'. 'Return'. '</td>';
} elseif (is_null($row1['date_returned']) && is_null($row1['HDD_Id']) && is_null($row1['Loaner_Laptop_Id'])){
$status .= '<td><a href="ReturnPhone.php?phoneId=' .
$row1['Phone_Id'] . '&studentId='.
$row1['Student_Id']. '">'. 'Return'. '</td>';
}elseif (is_null($row1['date_returned']) && is_null($row1['Phone_Id']) && is_null($row1['Loaner_Laptop_Id'])){
$status .= '<td><a href="ReturnHDD.php?hddId=' .
$row1['HDD_Id'] . '&studentId='.
$row1['Student_Id']. '">'. 'Return'. '</td>';
}else{
$status .= '<td>' . $row1['date_returned'] . '</td>';
}
$status .= '</tr>';
$i++;
return $status;
}
}
}
答案 0 :(得分:1)
这一行:
$row1 = mysqli_fetch_array($ret, MYSQLI_ASSOC);
正在读取结果中的第一行数据。但是在你做之前你没有做任何事情
while ($row1 = mysqli_fetch_array($ret, MYSQLI_ASSOC)) {
使用第二行的值覆盖数据。您需要删除第一行。