簡體   English   中英

php使用第一個表單返回數據創建第二個表單

[英]php Create second form using the first form return data

我正在處理的問題是:我有一個表格,要求用戶輸入名稱。 然后我在數據庫中搜索此名稱,該數據庫將返回幾個地址。 然后,我需要使用這些地址來生成第二個單選按鈕形式。 用戶將選擇一個地址,然后將他們重定向到該地址。

整個過程就像在亞馬遜上購物時,使用用戶名登錄后,將要求您選擇送貨地址,一旦選擇送貨地址,我便要將用戶重定向到他們的地址頁面。

我目前擁有的是

//error checking----------------------------------
if (empty($_POST['name'])===true) {
echo"filling in your name"
}
else{
//get value from database------------------------------        
    $query="get address";
    $sql_result=mysql_query($query);
    if(mysql_num_rows($sql_result)==0){
    echo "no result found";
    }
    else {
    //second form--------------------------------------------------------
    while ($row = @mysql_fetch_assoc($sql_result)){
                    echo "<form name=\"select\" method=\"post\">";
            echo '<input type="radio" name="name" value="'.$row['name'].'"> '.$row['name'];
            echo '<br>';                
        }
        echo "<input type=\"submit\" name=\"choice\" value=\"Submit\" />";          
    }
    }
}

//first form-----------------------------------------------
<form action="" method="post">
<ul>
    <li>name: <br> <input type="text" name="name">
    </li>       
    <li><input type="submit" value="Find it">
    </li>
</ul>
</form>

我不知道如何從這里開始。 我應該在哪里放置我的第一個表格,以便在加載頁面時僅顯示第一個表格。 提交第一份表格時,僅顯示第二份表格。 我試圖像這樣使用$ _GET

if(isset($_GET['success'])&& empty($_GET['success'])){
form2;
redirect(location:address.php);
}
else{
get name and search address;
get address;
redirect(location:samepage?success)
form1;}

但這是行不通的,因為在else語句中生成了地址,我無法從if語句訪問它。 謝謝您的幫助。

您必須將第一個表單重定向到新頁面,然后查看$ _POST變量。

您可以這樣操作:

第一頁

<form action="secondpage.php" method="post">
<ul>
    <li>name: <br> <input type="text" name="name">
    </li>       
    <li><input type="submit" value="Find it">
    </li>
</ul>
</form>

secondpage.php

if(!isset($_POST['name']))
{
    redirect(location:firstpage.php);
}
else
{
    // MySql request to check username

    $resultArray // you result as an array

    echo '<select>';
    foreach ($resultArray as $value){
        echo '<option value="'+$value+'">'+$value+'</option> 
    }
    echo '</select>';
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM