我正在爲客戶端開發後端功能。他們希望能夠通過非常基本的視圖添加新記錄和編輯舊記錄;我正在慢慢到達某個地方,但現在我被卡住了。恐怕我從一開始就沒有想到我的方法。數據庫更新功能幫助
這是它看起來像此刻:
「添加」字段集從一個按鈕,這是不是個大氣壓下顯示滑出。它完全按照它的說法向表中添加新記錄。這工作正常,我成功地使視圖動態(字段每個表更改等)和插入語句工作正常。但是,問題在於編輯功能。
當我按下記錄旁邊的「編輯」按鈕時,該行的值將被加載到上面的表單中。客戶可以編輯這些值並提交它們。或者應該可以。
我被困在這裏。大多數更新聲明讓我想把我的頭撞在牆上。隨着表,顯示,它不完全是難寫查詢:
$this->db->where('guestid' => $guestid)->update($table)
主這裏關鍵是guestid
。我應該使用這個ID來知道我想更新哪一行。然而,目前,我沒有辦法告訴我的表格我要更新哪一行。我可以做一個隱藏的輸入字段,並將ID放在那裏..但是!就像我之前提到的那樣,我使用這個視圖來處理不同的表格。不是每個表都有guestid等。我當然可以編寫一個巨大的switch語句或if-structure來確定哪個表以及哪個id應該進入隱藏字段,但我正在尋找一種更簡單的方法。
這主要是讓我頭疼,因爲一些表加起來有PK(例如:我的表event_pass
有eventID
和passID
組合PK)。我不確定如何將此鏈接到表單,以及如何告訴我的應用程序'看,用這個PK'更新這一行上的這些值。
我在陣列中的所有表的元數據,所以我知道PK等:
[eventID] => Array
(
[Field] => eventID
[Type] => int(10) unsigned
[Null] => NO
[Key] => PRI
[Default] =>
[Extra] =>
)
[passID] => Array
(
[Field] => passID
[Type] => int(10) unsigned
[Null] => NO
[Key] => PRI
[Default] =>
[Extra] =>
)
etc..
與我的思維過程的任何幫助,將在這裏感謝。我不是在尋找完整的代碼片段,只是一些想法,如何實現這一點的建議,讓我的生活變得更輕鬆。我可以提供更多其他表的外觀截圖,如有必要,我當然可以提供代碼。提前致謝。
我們想念你的表架構非常感謝! – ajreal