[PHP-users 35383] Re: チェックボックスにチェックがない場合

Masanori Nakashima m_nakashima @ md-systems.net
2010年 10月 22日 (金) 22:35:42 JST


中島@MDSです

更新する・更新しないはデータとは目的が違う入力だと思いますので
私の場合は完全に別名でhidden値を作ると思います。
例えば
<input type="hidden" name="command" value="renew_hoge">
<input type="checkbox" name="hoge[]" value="1">
<input type="checkbox" name="hoge[]" value="2">

if( 'renew_hoge' == $_POST['command'] ) {
  $hogeArray = $_POST['hoge'];
  if( !is_array($hogeArray) ) {
    $hogeArray = array();
  }
  // 元の配列設定を消して新しい配列を保存する
}

でも複数のページから呼ばれる可能性があるとのことですので
実行プログラムをモジュール化して呼び出す方式で組まれているのかと
思います。もしそうでしたらモジュール自体をこの部分だけ別にして
おいた方があとから使いまわしやすく入力値よりも呼び出しページで
このモジュールを呼び出すかどうか制御する方がやり方としては良いの
ではないかと思います。規模にもよりますが。

□■◇ オープンソースPHPショッピングカート shopformer公開中
■□■ http://www.mds-tools.com/
□■◇ Masanori Nakashima 
■□■ MDS co.,Ltd. 
□■□ mail : m_nakashima @ md-systems.net
■□■ URL  : http://www.md-systems.net/
□■□ Tel  : 03-5950-0525
■□■ Fax   : 03-5950-0526
□■□ Zip   : 170-0013
■□■ 311, 25 Sankyo-Blg 1-48-10 Toshimaku Tokyo Jp



PHP-users メーリングリストの案内