用戶點擊'查看用戶',PHP邏輯使用MySQL SELECT獲取數據,將數據傳遞給table_view,然後顯示所有'用戶'系統。如何爲mvc crud網站創建一個動態更新功能
每個錶行都有一個「編輯」超鏈接,它提取一個數組或表單元素,這個表單元素的數組被傳遞給一個'Form_Generator',它爲表單數組生成html,表單的值也被添加in。
因此,用戶面對的表單元素(有時20個元素大)與表單元素值匹配數據庫中的值。
我的問題是...
我該如何使更新動態?如果不是動態的,我該如何讓它變得更好?
我現在的方法是如此...
當用戶eddited他們提交表單,然後驗證值。
可能我補充說,一種形式可以在關係數據庫中
我可以寫一個更新語句像每個元素由3個或多個表:
if (isset ($user_input["firstname"]))
{
$this -> _database -> update("UPDATE users SET firstname = '{$user_input["firstname"]}' WHERE user_id = $user_id");
$this -> _database -> execute();
}
etc etc for ALL fields
或者我可以用一個帶JOINS的UPDATE語句一次更新多個字段。像這樣:
$this-> _database -> custom("UPDATE fitters AS f INNER JOIN user_types AS ut ON f.fitter_id = ut.type_id INNER JOIN users AS u ON u.user_id = ut.user_id SET f.title = '{$user_input["title"]}', f.firstname = '{$user_input["firstname"]}', f.surname = '{$user_input["surname"]}', u.email_address = '{$user_input["email_address"]}' WHERE u.user_id = {$user_input["user_id"]}");
有沒有人知道更好的方法來做到這一點?
您是如何處理更新項目中的數據庫信息的?
在你的例子中你有一個用戶類。你是否建議我應該爲每個表格視圖創建一個類?說一個用戶類?和所有其他表的類? – 2012-02-16 10:07:31
準確地說,表格視圖意味着什麼?他們是用戶的屬性還是..你能舉一些例子嗎? – 2012-02-16 11:15:44
那麼說我有一個'地址'表和'用戶'表。每個用戶都有一個對「地址」表中主鍵的外鍵引用。當用戶查看「用戶」時,他們會希望看到「用戶」信息和「地址」信息,以便查看。 (以我的方式命名的東西) – 2012-02-16 13:13:14