如何将$ _GET数组的值传递给新的URL?

时间:2014-07-07 06:59:15

标签: php html get

我有一个简单的表单,当用户输入一个代码和一个手机号码时,它应该打开一个新的url,这是我的代码:

<form method='get'>
ID:     <input type='text' name='code'><br>
Mobile: <input type='text' name='mobile'><br>

<?php

echo "<button type='button' onclick='location.href=\"http://workflow.abfarmarkazi.ir/phpsql/sms_info.php?id={$_GET['code']}&mob={$_GET['mobile']}\"'>Submit</button>";

?>

</form>

$_GET数组的值不会更新,我该怎么办?

4 个答案:

答案 0 :(得分:2)

让表单直接在动作网址上提交。点击提交后,您将重定向http://workflow.abfarmarkazi.ir/phpsql/sms_info.php?id=text_id&mob=text_mob

<form method='get' action ='http://workflow.abfarmarkazi.ir/phpsql/sms_info.php'>
ID:     <input type='text' name='id'><br>
Mobile: <input type='text' name='mob'><br>
<input type='submit' value='submit'>
</form>

答案 1 :(得分:2)

如果您的表单应该在按钮上的onclick事件中发布到该URL,则它无法工作,因为当前文件中未给出$ _GET值。

只需使用action属性将表单发布到sms_info.php,它就可以了。例如:

<form method='get' action="http://workflow.abfarmarkazi.ir/phpsql/sms_info.php">
ID:     <input type='text' name='code'><br>
Mobile: <input type='text' name='mobile'><br>
<input type="submit" value="SMS">
</form>

在你的sms_info.php中,你可以通过$ _GET超全局访问这些值:

<?php
// file: sms_info.php

$id = $_GET['code'];
$mob = $_GET['mobile'];

// ...
?>

答案 2 :(得分:0)

K.I.S.S保持简单愚蠢: - )

<form method='get' action='http://workflow.abfarmarkazi.ir/phpsql/sms_info.php'>
ID:     <input type='text' name='id'><br>
Mobile: <input type='text' name='mob'><br>
<input type='submit' onclick='this.form.submit();'>Submit</input>
</form>

当您点击该按钮时,它会向该网址提交正确的获取请求。

答案 3 :(得分:0)

<form method='get' action='http://workflow.abfarmarkazi.ir/phpsql/sms_info.php'>
    ID:     <input type='text' name='id'><br>
    Mobile: <input type='text' name='mob'><br>
    <button type='button' onclick='this.form.submit();'>Submit</button>";
    </form>

$_GET超全局被定义为URL字符串的一部分:

http://workflow.abfarmarkazi.ir/phpsql/sms_info.php?code=123&mobile=25642356

在sms_info.php中:

echo $_GET['code']; // 123
echo $_GET['Mobile']; // 25642356

所以$_GET没有存储在服务器上,而是随HTTP请求一起传递,$_POST也是如此,但这会在HTTP标头中传递而不是简单地附加到URL的结尾。