0

これは機能しません。古いパラメータは失われます。http://xxxx/temp/test.php?mode=compoundを取得します

<form align="right" action="http://<? echo $_SERVER['SERVER_ADDR']."/temp/test.php?".$_SERVER['QUERY_STRING'];?>">
<? if ($_SESSION['mode']=="simple") { ?>
<input type="submit" value="Switch to compound mode">
<input type="hidden" name="mode" value="compound">
<? } else { ?>
<input type="submit" value="Switch to simple mode">
<input type="hidden" name="mode" value="simple">
<? } ?>
</form>
4

2 に答える 2

0

あなたが使用しようとすることができるGETパラメータを使用していると仮定すると

echo $_SERVER['SERVER_ADDR']."/temp/test.php?".implode('&', $_GET);

それ以外の

echo $_SERVER['SERVER_ADDR']."/temp/test.php?".$_SERVER['QUERY_STRING'];
于 2013-02-18T12:28:14.583 に答える
0

私は最終的にこのコードでこれを行いました:

<form align="right" action="http://<?echo $_SERVER['SERVER_ADDR']."/temp/test.php";?>">
<? if ($_SESSION['mode']=="simple") { ?>
<input type="submit" value="Switch to compound mode">
<input type="hidden" name="mode" value="compound">
<? } else { ?>
<input type="submit" value="Switch to simple mode">
<input type="hidden" name="mode" value="simple"> <? } 
foreach ($_GET as $id=>$parameter) { if ($id=="mode") { continue;}?>
<input type="hidden" name="<?echo $id;?>" value="<?echo $parameter;?>" /> <? } ?>
</form>
于 2013-02-20T11:50:34.023 に答える