7

作成中のアプリケーションがあり、ある時点で行き詰っています。

複数の値を持つ変数を渡そうとしています。したがって、私の URL は次のようになります。

localhost/report.php?variable=value1, value2, value3

問題は、これを行う方法がわからないことです。変数は、データベースからデータを取得するために使用されます。私はPHPを使用していますが、Javascriptは使用していません。

どんな助けでも素晴らしいでしょう!

編集:
変数が選択されているページにあるHTMLは次のとおりです。

<select name="types" size="19" multiple>
    <option value="all" selected>All Types</option>
    <option value="book" selected>Books</option>
    <option value="cd" selected>CD</option>
</select>

したがって、ユーザーは Books と CD を選択でき、これら 2 つの値を「types」変数に渡す必要があります。

4

6 に答える 6

10

使用する&

localhost/report.php?variable=value1&val2=value2&val3=value3

それはあなたが求めているものですか?

于 2012-08-12T19:32:48.520 に答える
5
于 2012-08-13T17:07:51.183 に答える
5

PHP でこれを行う簡単な方法がありhttp_build_query()ます。値を呼び出してインデックス付き配列として渡します。あなたは次のようなことをします:

$value_array = array('types' => array('book', 'cd'));
$query = http_build_query($value_array);

次に、を使用して URL を生成し$queryます。

于 2012-08-12T19:35:55.367 に答える
2

試してみるlocalhost/report.php?variable[]=value1&variable[]=value2と、phpで配列が得られます

于 2012-08-12T19:35:50.287 に答える
2

あなたのURLは正しいと思います

localhost/report.php?variable=value1,value2,value3

次に、PHP を使用して report.php ページのすべての値を取得します。

$variable = explode(",", $_GET["variable"]);

// Output
$variable[0] = "value1";
$variable[1] = "value2";
$variable[2] = "value3";
于 2012-08-12T19:41:12.033 に答える
0

次のようにシリアライズを使用できます。

echo '<a href="index.php?var='.serialize($array).'"> Link </a>';

次のようにunserializeを使用してデータを取得します。

$array= unserialize($_GET['var']);

serialize 関数は、配列型の格納可能な (文字列) バージョンを提供し、unserialize 関数によって復元できます。

于 2012-08-12T19:46:48.823 に答える