当点击按钮打开链接时,问号后的单词丢失


Words after question mark is missing when click button to open link

这是我的代码:

$gateway = "http://html.net/page.php?name=Joe";
<form action="<?php echo $gateway ?>" method="LINK" target="_blank">
<input type="submit" value="Open link"> </input></form>

然而,当链接打开时,URL只带我到http://html.net/page.php。我怎样才能让它带我到那个网关链接?

您必须将GET变量特别编码为隐藏的表单字段。

<?php
$gateway = 'http://html.net/page.php?name=Joe';
$parsedUrl = parse_url($gateway);
$query = $parsedUrl['query'];
parse_str($query, $parsedQuery);
?>
<form action="<?= $gateway ?>" method="get" target="_blank">
    <div>
<?php
foreach ($parsedQuery as $key => $value) {
?>
        <input type="hidden" name="<?= $key ?>" value="<?= $value ?>" />
<?php
}
?>
        <input type="submit" />
    </div>
</form>