EditableGrid,“addcolumn”循环

时间:2016-10-20 08:23:57

标签: php mysql editablegrid

尝试为EditableGrid代码创建一个循环。 这就是它现在的样子。

$grid->addColumn('id', 'ID', 'integer');
$grid->addColumn('site', 'Site', 'string');

因此,如果我需要向页面添加新列,我在MySQL数据库中添加一个新列,并在此代码中添加一个新行,如:

$grid->addColumn('newcolumn', 'A brand new column', 'string');

为了自动向页面添加新列,我想创建一个循环,它从表中获取第一个参数(数据库中字段的名称)的输入:

CREATE TABLE price (
  id   INT(11)     NOT NULL AUTO_INCREMENT,
  site VARCHAR(50) NOT NULL,

以及从该表中获取的另外两个参数(将在MySQL的列和数据类型中显示的标签):

CREATE TABLE header (
  header_name VARCHAR(50) NOT NULL,
  header_type VARCHAR(50) NOT NULL,

1 个答案:

答案 0 :(得分:0)

好的,我想我找到了解决方案。为了创建循环,我们创建了2个查询:

$get=$mysqli->query('SELECT header_name, header_type FROM header');
$get1=$mysqli->query('SHOW COLUMNS FROM price');

然后我们制作一个循环

while($row = mysqli_fetch_assoc($get) and $row1 = mysqli_fetch_assoc($get1)){
$grid->addColumn(''.$row1['Field'].'', ''.$row['header_name'].'', ''.$row['header_type'].'');}

我猜,是的。此外,如果您需要排除某些列,请使用以下代码:

if($row1 == 'id' || $row1 == 'site')
    continue;