0

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

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

在第二个页面上,它基本上是一个下拉菜单,使用带有提交按钮的选择标记,该按钮从 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 并提交,我的 url 不保留变量 first_name 和 last_name ,但它只是替换它:

secondPage.php?selectedOption=op1 

代替:

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

任何帮助表示赞赏。

4

3 回答 3

2

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

改变这个:

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

对此:

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

您的secondPage.phpcoud 代码如下所示:

// 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 注入的信息。

希望其中的一些帮助和好运。

于 2013-06-02T05:01:42.590 回答
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方法

于 2013-06-02T04:15:54.647 回答
0

Basically, I've been working myself with something exactly like that, but I've found a great solution and a great approach in my own opinion.. let me give you some bit and piece of code as an example if you don't mind ^_^..

to be organised and clear what you did is : -

##**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..
于 2013-06-02T05:16:54.183 回答