0

我想根据选定的列从我的SQL表中显示一个列表:

$list = $command -> select('*') -> from("{{list}}") -> queryRow();

代码

<?php foreach($list["listname"] as $property => $k): ?>
<?php echo $property ?>
<?php echo $k ?>

它返回一个错误
500 错误:为 foreach() 提供的参数无效

如果我将代码更改为:

echo $list['listname'];

我只从表中获取第一行。

4

2 回答 2

0

我相信你必须用 endforeach 结束 foreach;

<?php foreach($list["listname"] as $property => $k): ?>
<?php echo $property ?>
<?php echo $k ?>
<?php endforeach; ?>

您还可以通过在 php 文件顶部编写以下内容来获取更多调试信息:

ini_set('display_errors','On');
error_reporting(E_ALL);
于 2013-09-03T12:33:14.093 回答
0

试试这个代码

<?php
  if (is_array($list["listname"]))
  {
     foreach($list["listname"] as $property => $k)
     {
       echo $property."<br>";
       echo $k;
     }
   }
 ?>

我相信查询本身返回一行......作为它的 queryRow();

     $list = $command -> select('*') -> from("{{list}}") -> queryRow();

     array &queryRow ( string $query , array $types = null , integer $fetchmode = MDB_FETCHMODE_DEFAULT , integer $rownum = null );

描述

获取查询返回的第一行数据。该函数负责执行查询并在完成后释放结果。

参考

于 2013-09-03T12:27:04.130 回答