基于数据库的模板系统

时间:2011-10-11 20:21:17

标签: php mysql template-engine

作为我正在编写的脚本的一部分,我想添加一个模板系统,其中的变量来自数据库表,如下所示:

id int auto_increment primary key, 
name varchar(200) not null, 
value float(6,2) not null

我的问题是:

1-我无法找到一种方法,使用户可以在编辑页面时显示这些变量。我不知道会有多少变量,所以我无法添加一体化表格。

2-我不知道应该如何将变量保存到数据库中(我希望保存变量的引用而不是它的值,所以当它在表上更新时,所有使用它的页面都将具有新的价值)...但是当有人在编辑时首次查看页面时,使用变量号似乎并不清楚它是什么。

3-我应该使用 preg_replace 之类的内容来替换这些变量,还是有更好的方法来做到这一点?

1 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您正在寻找一种方法从数据库中提取列定义,以构建有关数据库表中定义的字段的Web表单?如果是这种情况,您可以使用

轻松获得结构
SHOW COLUMNS 
FROM database-table

更好的方法是使用 information_schema 数据库(自MySQL 5.x以来可用),因为您不必解析任何内容:

SELECT * 
FROM   information_schema.columns 
WHERE  table_name = "database-table"