如何在转到另一个页面时保留网址数据

时间:2013-06-02 04:09:09

标签: php url hyperlink

我有从上一页的表单提交的url变量。所以我的网址看起来像site.com/submitted.php?first_name=hello&last_name=bye。

现在,当我转到第二页时,我正在使用链接来保存我提交的变量     <a href="secondPage.php?first_name=hello&last_name=bye>pageLink</a>

在第二页上,它基本上是一个下拉列表,使用带有提交按钮的select标签,该按钮从mysql服务器生成一个表,然后链接回同一页面。它看起来像:

<FORM ACTION="secondPage.php?first_name=hello&last_name=bye" METHOD="GET">
    <select name='selectedOption' >
        <option value="op1">option1</option>  
        <option value="op2">option2</option>  
        <option value="op3">option3</option>  
    </select>
    <INPUT TYPE="SUBMIT" VALUE = "Search">
</FORM>

但是让我说我​​选择了option1并提交,我的网址没有保留变量first_name和last_name,但它只是替换它:

secondPage.php?selectedOption=op1 

而不是:

secondPage.php?first_name=hello&last_name=bye&selectedOption=op1

感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

我不确定你想如何传递数据,但这里建议用php获取你想要的值。

改变这个:

<FORM ACTION="secondPage.php?first_name=hello&last_name=bye" METHOD="GET>

到此:

<form action="secondPage.php" METHOD="post">

secondPage.php的代码看起来像这样:

// the 'if' statements aren't necessary. just an idea for simple server-side
// validation

if(isset($_REQUEST['selectedOption']) && $_REQUEST['selectedOption'] != ''){
    $option = $_REQUEST['selectedOption'];
}

if(isset($_REQUEST['first_name']) && $_REQUEST['first_name'] != ''){
    $fname = $_REQUEST['first_name'];
}

if(isset($_REQUEST['last_name']) && $_REQUEST['last_name'] != ''){
    $lname = $_REQUEST['last_name'];
}

您需要做的所有值现在都在$option$fname$lname

你说你的新手php,欢迎:),并且永远不要相信用户输入。您应该花些时间阅读SQL Injection

希望其中一些有益并祝你好运。

答案 1 :(得分:1)

在第二页。在表单中创建两个隐藏字段<input type="hidden" value="<?php echo $_REQUEST['first_name'] ?>" name="first_name"/>

<input type="hidden" value=""<?php echo $_REQUEST['last_name'] ?>"" name="last_name"/>

我的建议使用post方法

答案 2 :(得分:0)

基本上,我一直在努力完成与此类似的事情,但我已经找到了一个很好的解决方案和一个很好的方法,我个人认为..如果你让我给你一些代码和一段代码作为例子不介意^ _ ^ ..

有条理并清楚你所做的是: -

##**FIRST PAGE** : -
the url: - secondPage.php?first_name=hello&last_name=bye <--- this was the result..

Then you travelled to the 2nd page: - <-- result was still associated

##**SECOND PAGE** : -

$firstname = $_GET['first_name'];
$lastname= $_GET['last_name'];
<FORM ACTION="secondPage.php?first_name=<?php echo $firstname; ?>&last_name=<?php echo $lastname ?>" METHOD="POST">
    <select name='selectedOption' >
        <option value="op1">option1</option>  
        <option value="op2">option2</option>  
        <option value="op3">option3</option>  
    </select>
    <INPUT TYPE="SUBMIT" name ="submit" VALUE = "Search">
</FORM>

##**THIRD PAGE** The page that the form is going to go to: -


$option = $_GET ['selectedOption'];
// you can also get the other data on this page through same method i've done on page two..