[PHP-users 29674] Re: PEAR HTML_QuickForm プルダウンメニューの連動について教えてください。

Hiyori Kikuchi piyo @ box.email.ne.jp
2006年 7月 9日 (日) 15:50:51 JST


PEAR HTML_QuickForm hierselect プルダウンメニューの連動について
-----------------------------------------------------------
お世話になります。
ひよっこ(こと、kikichi)です。

高木様
ありがとうございます。

私のわかりずらい説明にもかかわらず
状況・したいことをくみ取ってくださり、丁寧なアドバイスに大変助かりました。感
動です。

■アドバイスの通り、下記の二つのページとじっくり取り組んでみたところ
希望通りの機能にすることができました。!

>
http://pear.php.net/manual/ja/package.html.html-quickform.html-quickform-hierselect.setoptions.php
> を見て、setoptions() に渡す配列の形式を確認してみましょう。特に、2番
> 目の配列のキーがどうなっているかに注目です。$depart2 のキーは、このペー
> ジの例と同じようになっていますか?
>
> で、何が問題なのかがわかれば、次は正しい形式の配列を作る方法を調べなけ
> ればなりませんね。キーを指定して配列を作る方法は、
>  http://www.php.net/manual/ja/function.array.php
> の例で説明されているようです。


■具体的には、ご指摘の通り、連動するための$depart2のキーの指定が抜けていまし
た;

【修正前】

$depart2=array($shozoku1_array,$shozoku2_array,$shozoku3_array,$shozoku4_arr
ay);

【修正後】
$depart2=array('01'=>$shozoku1_array,'02'=>$shozoku2_array,'03'=>$shozoku3_a
rray,'04'=>$shozoku4_array);

というふうに、$depart1のキーと合わせました。

-------------------------------------------------------------
違うページばかり見ていて試行錯誤していましたが、
重要なページをちゃんと探して、じっくり読んで取り組むということの重要性を
学びました。

今後ともどうぞよろしくお願い致します。




----- Original Message ----- 
From: "TAKAGI Masahiro" <matakagi @ osk2.3web.ne.jp>
To: "PHP-users ML" <php-users @ php.gr.jp>
Sent: Saturday, July 08, 2006 10:26 PM
Subject: [PHP-users 29664] Re: PEAR HTML_QuickForm プルダウンメニューの連動
について教えてください。


> 高木です。
>
> At Sat, 8 Jul 2006 18:01:49 +0900,
> Hiyori Kikuchi wrote:
> >
> > $depart1=$shozoku_array;
> >
$depart2=array($shozoku1_array,$shozoku2_array,$shozoku3_array,$shozoku4_arr
> > ay);
> > $depart=$form->addElement("hierselect","shozoku_name","所属/担当者:");
> > $depart->setOptions(array($depart1, $depart2));
> >
> > とした場合
> >
> > $depart1(一階層目のテーブル)は、プルダウンメニューに値が表示されていま
す。
> > $depart2(二階層目のテーブル)は、連動どころか空のプルダウンメニューと
なって
> > います。。。
> >
> ってことは「おそらく $depart2 の内容がまずいのかな?」と予想できますね。
> というわけで、
>
> > print_rで配列の内容を表示したところ、
> >
> いい考えだと思います。ここまでできれば、あと一歩です。
>
> > ○($depart1)
> > Array ( [01] => 本社 [02] => 営業所A [03] => 営業所B [04] => 営業所C )
> >
> > ○($depart2)
> > Array ( [0] => Array ( [1001] => 鈴木 [1002] => 斉藤 [1003] => 佐藤 )
> >  [1] => Array ( [2001] => 宮良 [2002] => 白保 [2003] => 宮里 )
> >
> > -このような感じで [3] => Array まで続きます-
> >
> ぱっと見た感じでは何も問題はなさそうですが、本当にこれで大丈夫ですか?
>
http://pear.php.net/manual/ja/package.html.html-quickform.html-quickform-hierselect.setoptions.php
> を見て、setoptions() に渡す配列の形式を確認してみましょう。特に、2番
> 目の配列のキーがどうなっているかに注目です。$depart2 のキーは、このペー
> ジの例と同じようになっていますか?
>
> で、何が問題なのかがわかれば、次は正しい形式の配列を作る方法を調べなけ
> ればなりませんね。キーを指定して配列を作る方法は、
>  http://www.php.net/manual/ja/function.array.php
> の例で説明されているようです。
>
> -- 
> 高木 正弘 mailto:matakagi @ osk2.3web.ne.jp
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3




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