GuruGuru22さんの仰るとおり、
<select name="test[]" multiple>
など、「name="test[]"」と言った感じで
[]をname属性に付加した場合、
$_POST['test'][0],$_POST['test'][1]と
言った感じで内容を参照できますが、
name要素を変更できない場合は
$_SERVER["QUERY_STRING"]
にフォームから送られた値が入っているので
自力で分解すれば取得する事もできるはずです。
例:
$foo = $_SERVER["QUERY_STRING"];
$array = explode("&", $foo);
foreach($array as $ber){
list($key, $value) = explode("=", $ber);
#すでに存在する属性の値の時
if(isset($post[$key])){
array_push($post[$key], $value);
}
#初めて取得する属性の時
else{
$post[$key] = array($value);
}
}
testと言う属性で3つ値を取得したい場合、
このルーチンで値を取得しますと
$post['test']に配列で値が格納されます
(一つしかない値も配列になってしまうのが難点ですね…)
あと、日本語の変数名は止めておいたほうが無難です。
日本語の表現方法はJisやEUCなど複数あり、
PHPの内部で使用されているのがどちらなのかは
サーバによって違い、JISで書いた日本語変数名が
EUCのサーバにアップロードされた時など
文字化けして変数とみなされない場合がある為です。
お礼
ご丁寧にありがとうございました。 php://inputがよくわからなかったですが、だいたいわかりました。 ありがとうございます。