關於mysql&php 複選存取與修改資料

edited 十月 2013 in PHP新手區
我設計的表格裡有複選的選項,以下是我的HTML設計,資料會放在資料庫的資料表中effect欄位裡。
<input type="checkbox" name="effect" value="保溼" />保溼
<input type="checkbox" name="effect" value="防曬" />防曬
<input type="checkbox" name="effect" value="美白" />美白
<input type="checkbox" name="effect" value="消除細紋" />消除細紋
這些選項可以複選的勾,但是每次存入資料庫都只出現最後一個勾的選項,例如選擇保濕還有防曬,資料庫就只會出現防曬,我覺得資料庫存入地方應該沒錯,但是不知道在寫SQL時要多加哪樣東西,才可以讓所有勾選的選項都放入資料庫欄位裡??還是要改什麼??


原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=4318

評論

  • edited 七月 2009
    我怎麼覺得name=""裡面的東西要不同吧QQ

    在多個變數把POST過來的選項加起來在存進資料庫
    應該吧 我沒有很確定 ㄎ
  • 280280
    edited 七月 2009
    f905201 大講的沒錯
    因為物件名稱一樣的關係
    checkbox 一個選項,是視為單一物件
    可能你與 radio 的關念搞錯

    radio 是 多選一,所以物件名稱要一樣
    checkbox 是 一選一,各自獨立,名稱要各自一個
  • edited 七月 2009
    一般來說元件名稱應該設法讓它是唯一的
    但有時為了操作同類型資料上的方便,我們會用這種手段
    <input type="checkbox" name="effect[]" value="保溼" />保溼
    <input type="checkbox" name="effect[]" value="防曬" />防曬
    <input type="checkbox" name="effect[]" value="美白" />美白
    <input type="checkbox" name="effect[]" value="消除細紋" />消除細紋
    
    post後,php會接到像這樣的陣列
    $_POST[0]='保溼';
    $_POST[1]='防曬;
    ....
    那麼那一種適合你的應用呢?(笑
  • edited 七月 2009
    哦~原來也可以這樣~方便的陣列~哈
Sign In or Register to comment.