我在Microsoft访问中拥有数据库表,其字段如下: PARTNO,描述,数量
当我正在检索数据并尝试在html表中显示它时显示错误
非法字符串偏移' partno'
我的php代码如下:
<?php
foreach($items as $row){
$partno=$row['partno'];
$desc=$row['description'];
$qty=$row['quantity'];
?>
<tr>
<td><?=$partno?></td>
<td><?=$desc?></td>
<td><?=$qty?></td>
</tr>
<?php
}
}
if(!($items)){
?>
<h3 style="color: red;">Item not found!</h3>
<?php
}
?>
我尝试通过
查看数据print_r($items);
数组$ items的数据是:
Array (
[partno] => BRZU
[0] => BRZU
[description] => CONTROL UNIT
[1] => CONTROL UNIT
[quantity] => 3
[2] => 3
)
答案 0 :(得分:3)
似乎$items
实际上只包含一行。
在其上使用foreach循环将导致$row
采用值BZRU, BZRU, CONTROL UNIT, 2, 3
。
我认为您期待像这样的数组,您可以使用foreach循环进行迭代。
答案 1 :(得分:1)
在继续循环之前,首先验证数组<?php
use Illuminate\Database\Eloquent\Model;
require_once './vendor/autoload.php';
class User extends Model
{
public $table = "user";
protected $fillable = ['id', 'user_name', 'first_name', 'last_name', 'email'];
}
?>
是否为空。
items
答案 2 :(得分:0)
你的逻辑错误。在尝试迭代之前,您需要检查$items
是否为空。