我試圖建立我的網站上的申請表,其中有一個頁面(parent.php)和另一頁上一個較小的形式(child2.php),當上主大申請表的值用戶填寫他們的一些細節並提交更小的表格,他們被帶到更大的表格中,他們輸入的詳細信息已經出現在大表格的相應文本框中,旁邊有一些額外的表格供他們填寫(如果這樣做感!)傳遞如果設置
我能得到它的工作在第2頁上的文本框第一頁上顯示匹配文本框的值,但只有當值被設定。由於用戶可以通過較小的表單或通過直接訪問來訪問主應用程序,或者直接訪問它,我需要這樣做,如果設置了該值,則會顯示設置值,並且也將是輸入數據庫的值,或者值不是從較小的表單中預先設置的,用戶可以將他們的信息輸入到主表單中,這是發送到數據庫的內容。我想我可能需要使用ifisset,並試圖這樣做,但是沒有辦法。
對於凌亂的代碼和設置文本框的道歉,因爲它們只是爲了測試這一點,我仍然掌握所有這一切,並會很感激,如果任何人都可以幫助我/讓我知道如果我在正確的軌道/完全關閉。提前致謝!
1(parent.php)
<form action="child2.php" method="post" class="validate">
<div>
<input class="tb" type="text" name="fName" placeholder="first name" id="fName" value="<?php $fName ?>" required/><br/>
<br/>
<input class="tb" type="text" name="sName" placeholder="surname" id="sName" value="<?php $sName ?>" required/><br/>
<br/>
<input class="tb" type="email" name="email" required placeholder="email address" id="email" value="<?php $email ?>" required/>
<br/>
<input class="tb" type="address" name="address" placeholder="address" value="<?php $address ?>" id="address" />
<br/>
<input id="submit" name="submit" type="submit" value="Submit">
</div>
</form>
第2頁(child2.php)
<?php
function renderForm($fName, $sName, $email, $address){
?>
<form action="" method="post" class="validate">
<label class="label">first name</label><input class="tb" type="text" id="fName" name="fName" value="<?php if (isset($fName)) { echo $fName = $_REQUEST['fName'];} else { echo "first name"; }?>"/>
</br>
<label class="label">surname</label><input class="tb" type="text" id="sName" name="sName" value="<?php if (isset($sName)) { echo $sName = $_REQUEST['sName'];} else { echo "surname"; }?>"/>
</br>
<label class="label">email</label><input class="tb" type="email" id="email" name="email" value="<?php if (isset($email)) { echo $email = $_REQUEST['email'];} else { echo "email"; }?>"/>
</br>
<label class="label">address</label><input class="tb" type="text" id="address" name="address" value="<?php if (isset($address)) { echo $address = $_REQUEST['address'];} else { echo "address"; }?>"/>
</br>
khanahk,謝謝您的指導。另外,如何確定是否已經設置了上一頁中的值,我是否正確:value =「<?php if(isset($ email)){echo $ email = $ _REQUEST ['email' ];} else {echo「email」;}?>「? – rosewit
另外,請原諒我在這裏的無知,但是如果我已經可以將值從一頁傳遞到其他頁面,那麼是否有必要使用SESSION?有沒有辦法使用我已經有的代碼,只是添加了一些東西,可以讓我確定文本框的值是否已經在前一頁中設置或沒有?再次感謝。 – rosewit
如果您使用POST方法,那麼您可以使用isset($ _ POST ['email'])等來檢查用戶在提交表單後是否將任何內容放入字段中。 $ _POST是POST表單數據的超全球性; $ _GET是GET表單數據的超全球性。如果您希望能夠在延長的時間內使用數據,而不是僅在用戶提交表單後立即使用數據,則$ _SESSION會更好。用戶名等適用於$ _SESSION。 – khaverim