尝试为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,
答案 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;