我想在列而不是行中显示数据库中的数据。只有当两个列项目的数量相等时,此代码才能正常工作。当它们是奇数时,它显示未定义偏移量的错误。
| 1 | 5 |
| 2 | 6 |
| 3 | 7 |
| 4 |
$mid = ceil(mysqli_num_rows($result)/2);
while( $row = mysqli_fetch_row($result) )
{$list[] = $row;
}
for( $i = 0; $i < $mid; $i++ ) {
$itemOne = $list[$i];
$itemTwo = $list[$i + $mid];
echo "
<tr>
<td>
<button name='city'>".$itemOne[1]."</button>
</td>
<td>
<button>".$itemTwo[1]."</button>
</td>
</tr>";
}发布于 2021-03-22 00:35:23
在您的示例中,使用mysqli_num_rows($result) = 7和$mid = 4。
迭代从0开始,因此第一对是( 0,4),第二对是(1,5),依此类推,直到(3,7)。但是7是非法的索引!你只有0-6。
一个很好的纠正方法应该是检查isset($list[$i + $mid]),如果没有-给$itemTwo分配一个占位符值。
https://stackoverflow.com/questions/66734829
复制相似问题