2011-11-21 100 views
1

我有一個有50個問題的表單。用戶填寫完表單後,我想將他們帶到另一個頁面以首先取消/確認他們已完成表單。我的問題是如果他們選擇取消,我該如何放回所有在表格中回答的字段?使用HTML&php存儲表單數據

EDITED

我已經編輯我的問題,以顯示我的代碼,因爲我strugling:

$sql1="SELECT * FROM ex_question WHERE test_name = '$tid' ORDER BY RAND()"; 
$result1=mysql_query($sql1); 
echo "<form method='post' action='....'>"; 
while($row1 = mysql_fetch_array($result1)) 
{ 
    $test_name=$row1['test_name']; 
    $q_nr=$row1['q_nr']; 
    $q_type=$row1['q_type']; 
    $question=$row1['question']; 
    $option1=$row1['option1']; 
    $option2=$row1['option2']; 
    $option3=$row1['option3']; 

echo "$question"; 

if ($q_type != 'mr') { 
if($option1!="") { 
echo "<input type='radio' name='question[$q_nr]' value='A'>$option1<BR>"; 
} else { 
echo ''; } 

if($option2!="") { 
echo "<input type='radio' name='question[$q_nr]' value='B'>$option2<BR>"; 
} else { 
echo ''; } 

if($option3!="") { 
echo "<input type='radio' name='question[$q_nr]' value='C'>$option3<BR>"; 
} else { 
echo ''; } 

} else { // else if not <> mr 

if($option1!="") { 
echo "<input type='checkbox' name='question[$q_nr][]' value='A'>$option1<BR>"; 
} else { 
echo ''; } 
if($option2!="") { 
echo "<input type='checkbox' name='question[$q_nr][]' value='B'>$option2<BR>"; 
} else { 
echo ''; } 
if($option3!="") { 
echo "<input type='checkbox' name='question[$q_nr][]' value='C'>$option3<BR>"; 
} else { 
echo ''; } 
} //end else if q_type <> mr 
echo "<BR>"; 
echo "<BR>"; 
echo "</p>"; 
} //end while row1 
echo "<input type='submit' value='Finish'>"; 
echo "</form>"; 

回答

1

使取消按鈕一個提交,並讓它回發到原來的問卷。在那裏,你可以這樣做:

<input type="text" name="q1" value="<?=isset($_POST['q1']) ? $_POST['q1'] : '';?>" /> 

或者:

<input type="radio" name="q2" value="A" <?=isset($_POST['q2']) && $_POST['q2'] == 'A' ? 'checked="checked"' : '';?>" /> 
<input type="radio" name="q2" value="B" <?=isset($_POST['q2']) && $_POST['q2'] == 'B' ? 'checked="checked"' : '';?>" /> 

也是一樣的內部option元素select(選擇= 「選擇」)。

+0

您可以請如此善良,看看我編輯的問題 – Wilest

+1

對不起,但我沒有看到任何額外的問題,我可以回答? – CodeCaster

+0

我的歉意,我想實現你的代碼在我的原始,但我不能得到它的工作,它看起來像這樣'回聲「「;' – Wilest

1

傳遞$_POST$_GET陣列到確認頁面,如果他們打取消,將數組傳遞迴頁面,並填寫元素。

1

最簡單的解決辦法是增加:

<INPUT type=button value="Cancel" onClick="history.back();"> 

當你回去,形式將仍然存在。

+0

嗨,我試過這個,但它扔掉表格數據 – Wilest

0

您只能使用$_REQUEST['Answer']中的表單標記。

+0

嗨賈斯汀是有問題與我的意見 –

相關問題