0

1 つのテーブルから 3 つの列を取得し、それらを配列に格納してドロップダウン メニューに入力しています。ref_code は、どのドロップダウンに移動するか ('Module','Customer','Application') を決定するために使用され、id は選択値であり、ref_desc は表示テキストです。

foreach ($test as $t) {
    $aa[] = array($t->ref_code => array('id'=>$t->id, 'ref_desc'=>$t->ref_desc));
};

$aa['ref_code'] を使用してそれらを取得しようとしましたが、成功していません。助けてください。

この質問は似ていますが、必要な値を取得できません。

別のフォーラムで解決策を見つけましたが、後であなたの解決策も試してみます。どうもありがとうございました!

foreach ($aa as $a => $d) {
    foreach ($d as $ref_code => $dd) {
        echo "<p>". $ref_code ."</p>";
        echo "<p>". $dd['ref_desc'] ."</p>";
        echo "<p>". $dd['id'] ."</p>";
    };
};
4

2 に答える 2

0

三次元配列が必要です:

ドロップダウン => ID => 表示テキスト

さあ行こう:

// fill in:
$aa = array();
foreach ($test as $t) {

    if ( !isset($aa[$t->ref_code]) )
        $aa[$t->ref_code] = array();

    $aa[$t->ref_code][$t->id] = $t->ref_desc;

};


// have a drop down:
$myDropDown = 'Customer';
foreach ( $aa[$myDropDown]  as $id => $displaytext )
{
      echo "<option value=\"" . $id . "\">" . $displaytext . "</option>";
}
 .... etc.
于 2013-10-31T09:43:43.093 に答える
0

こんな風に書いてみませんか?ref_code (一意の場合) は、配列のキーです。

foreach ($test as $t) {
        $aa[$t->ref_code] = array('id'=>$t->id, 'ref_desc'=>$t->ref_desc);
    };
于 2013-10-31T09:30:15.807 に答える