1

友達、

私は drupal フォームを作成しており (私の 2 番目のフォームです!)、コースワークに関するデータベース情報を取得しています。非常に単純なcoursework_idcoursework_name

Drupal でドロップダウン メニューに入力する通常の形式は次のとおりです。

$form['selected'] = array(
       '#type' => 'select',
       '#title' => t('Selected'),
       '#options' => array(
          0 => t('No'),
         1 => t('Yes'),
       ),
       '#default_value' => $category['selected'],
       '#description' => t('Set this to <em>Yes</em> if you would like this category to be selected by default.'),
   );

上記の選択フォームの #options 部分で自分の coursework_id と coursework_name を渡そうとしています。

これまでのところ、次のコード行を思いつきました。

foreach ($results as $result) {

            $courseworks = (array($result->coursework_id => $result->coursework_name));
}

これはオプションの必要な形式と一致しますが、保存できる結果は 1 つだけです。

Array
(
    [2] => Java Programming
)

どうにかして新しい結果をプッシュすることができるでしょうか。PHP から array_push を試してみましたが、この場合はうまくいくようです。理解できる限り、値を追加することしかできません。

よろしく、-D

4

3 に答える 3

3

あなたは単に試す必要があります:

foreach ($results as $result) {
    $courseworks[$result->coursework_id] = $result->coursework_name;
}
于 2013-05-05T17:16:36.287 に答える
1

以下はあなたのためにそれをするべきです。最初に配列を定義してからキーを作成し、相対値を割り当てます。

$courseworks = array();
foreach ($results as $result) {
    $courseworks[$result->coursework_id] = $result->coursework_name;
}
于 2013-05-05T17:17:07.227 に答える