2011-10-11 479 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