0

前のページのフォームから送信された URL 変数があります。したがって、私の URL は site.com/submitted.php?first_name=hello&last_name=bye のようになります。

2番目のページに移動する間、送信された変数を保持するためにリンクを使用しています <a href="secondPage.php?first_name=hello&last_name=bye>pageLink</a>

この 2 番目のページでは、基本的には、mysql サーバーからテーブルを生成し、同じページにリンクする送信ボタンを含む select タグを使用したドロップダウンです。次のようになります。

<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

2ページ目。フォームで 2 つの隠しフィールド<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 に答える