作者Notte (why so serious ?)
看板PHP
標題[請益] 同頁多圖上傳及更改?
時間Mon Aug 4 21:16:31 2014
因為該頁前端 需要五張圖
所以在資料庫只放了一筆資料 紀錄五張圖的存取位置
後台的設計 也寫好五張圖去撈資料庫的位置
如果我一次上傳五張 那麼結果是正常的
問題是 如果我再次去上傳更改某一張圖 那麼其餘四張會變成空值
我是用UPDATE SET 去更改上傳過的圖
但因為四張沒改而抓不到POST的值而導致空值
請問我應該要怎麼改寫才比較正確呢???
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.121.251.106
※ 文章網址: http://webptt.com/m.aspx?n=bbs/PHP/M.1407158194.A.67E.html
※ 編輯: Notte (203.121.251.106), 08/04/2014 21:17:52
1F:推 chemberlain:把五張圖放進陣列,serialize後再寫進資料庫 08/04 22:39
2F:→ chemberlain:要修改時再抓出來unserialize去改要更新的資料 08/04 22:40
3F:→ Bambe:導致空值的部份別改它就好了,話說你資料庫怎麼設計? 08/04 23:08
4F:→ Notte:C大說的有點高深 我爬文一下好了@_@ 08/05 09:11
5F:→ Notte:B大 因為我只有那一頁需要偶爾換圖 所以只設計一筆 存5張圖 08/05 09:12
6F:推 crossdunk:c大說的是只需要一個欄位 08/05 10:24
7F:→ crossdunk:如果你不想改資料庫結構,我建議是五個都抓出來 08/05 10:26
8F:→ crossdunk:都放進去input text裡面 改要改的 這樣沒改的也會有值 08/05 10:26
9F:→ crossdunk:再一起送出就好了 08/05 10:26
10F:→ Bambe:所以才說你要在程式裡加工,讓空值也不要一起update進去 08/05 11:38
11F:→ Bambe:不然最簡單的方法就是crossdunk大說的了 08/05 11:39
12F:→ Notte:放進input text是什麼意思呢? 08/05 21:15
13F:→ Notte:讓空值不要update是利用if else嗎?麻煩各位了 08/05 21:16
14F:→ KawasumiMai:如果不想修改DB架構,就是修改時抓出五張值 08/05 22:39
15F:→ KawasumiMai:修改(替代)其中一張然後一樣寫入五張的資料進去 08/05 22:39
16F:→ KawasumiMai:這有很多種解決方法,端看巧思而已,像是另存text隱藏 08/05 22:40
17F:→ KawasumiMai:還是function設計加上index,寫入前先讀取然後取代該 08/05 22:40
18F:→ KawasumiMai:位置的值之後才寫入也可以 08/05 22:40
19F:→ Notte:感謝 我會多加研究相關作法的 08/07 17:22