0

このスクリプトでドロップダウンメニューを選択したい: LINK

既に json 形式のデータを作成しているスクリプトがあり、同じものを使用して 2 つのメニューを埋めたいと考えています。たとえば、 と を持つ 2 つのメニューが必要ですdrivercars

これはスクリプトです:

echo '{ "results" : [ ';

$gettruck_result = dbMySql::Exec(.........query.........);
$result_array = array();

while($row = mysql_fetch_assoc($gettruck_result)){

  $row_object = '{';
  $row_object .= '"id": "' . $row['id'] . '", ';
  $row_object .= '"driver": "' . $row['drivers'] . '", ';
  $row_object .= '"trucks": "' . $row['trucks'] . '", ';
  $row_object .= '}';    
  $result_array[] = $row_object;
}
$result_str = implode(", ", $result_array);
echo $result_str;
echo " ] }";
?>

これは彼らがドキュメントに持っているものです:

[{text:'Lorem', value:'5', title:'icons/enabled.gif'},{text:'Ipsum', value:'6',title:'icons/enabled.gif'}]

私は次のようなものを持ちたいと思います: 1. ドライバーをロードするとき:textドライバーの名前でvalueある必要があり、ID である必要がtitleあり、画像になります 2. トラックをロードするとき:textトラックの名前でvalueある必要があり、ID である必要があり、title別のアイコンです。

スクリプトを一度だけ呼び出して、同時にこれを行うことはできますか?

4

1 に答える 1

1

オブジェクト/配列をjsonにエンコードするphp関数があることをご存知ですか?

json_encode http://www.php.net/json_encode

最も簡単な方法は次のとおりです。1)次のようなnestedjson構造を提供します。

drivers {
    text: 'Lorem',
    value: '5',
    title: 'icons/enabled.gif',
    trucks: {
        text: 'Ipsum',
        value: '4',
        title: 'icons/foo.gif',

...

2)別のオプションは、ユーザーがドライバーを選択したときにajax呼び出しを行うことです。このajax呼び出しの戻りは、その特定のドライバーのすべてのトラックを保持します。

于 2012-06-25T17:52:02.407 に答える