2011-10-11 124 views
0

为脚本我写我想添加这些变量从数据库表中获得这样的模板系统的一部分:数据库模板系统

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

我的问题是:

1-我无法找到一种方式使用户友好,在编辑页面时显示这些变量&我不知道会有多少变量,因此我无法添加all-in-one表单。

2-我不知道应该如何将变量保存到数据库(我正在寻找保存变量的引用而不是它的值,所以当它在表上更新时,所有使用它的页面将会有新的值)...但使用变量编号似乎并不清楚它在编辑时第一次查看页面时所保留的内容。

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

+0

3:不,您当然不应该使用正则表达式来执行纯字符串替换。 – ThiefMaster

+0

你的第二点不太合理。如果该表中ID为15的行具有值3,14(实际上,将float(6,2)更改为decimal(6,2)),则在选择第15行并在页面上显示其值的位置,它将是3,14。如果您然后更新其值,所有请求该值的页面将显示新值。 – CodeCaster

+0

@ThiefMaster有什么更好的方法来做到这一点?我已经在下面的评论中进一步解释了我的要求,因为我注意到我的问题不是很清楚。 – Frank

回答

0

如果我正确理解你的问题,你正在寻找一种方法来从数据库中提取列定义来构建一个关于数据库表中定义的字段的Web表单?如果是这样的话,你可以用

SHOW COLUMNS 
FROM database-table 

更妙的是容易获得的结构将是使用INFORMATION_SCHEMA数据库(从MySQL 5.x中可用的),因为你不会有从中解析什么:

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

为什么喜欢而不是'='?! – ThiefMaster

+0

@ThiefMaster:你说得对。我已经取代了它。其实我不知道,为什么我把它放在那里......也许今天只是一个太辛苦的工作日;) – aurora

+0

当我阅读它时,他想动态地在该表格上为CRUD操作创建一个表单。 – CodeCaster