我尝试在 php 中使用多集合形式,因为我不知道 jquery 和 javascript(并且很难理解它)。
首先在这里我想做的是:
第 1 页:
Q1 你想要多少个号码?用户例如输入“2”
第2页:
Q2 你想要的每个数字有多少个字母:
(看起来像:数字 1:--- 数字 2:----)
例如,用户为第一个输入“2”,为第二个输入“1”。
第 3 页:
(好像:)
数字 1: 字母 1:--- 字母 2:----
数字 2:字母 1:---
到目前为止,在第 1 页和第 2 页之间一切正常,但在第 2 页和第 3 页之间没有任何反应另一个问题也是如果用户在 3 和 2 之间“返回”,则第 2 页没有任何内容,因为第一页的值为“丢失的”
找了半天也没找到,如果有什么建议我会很高兴的。
这是我的代码:
<?php
if ( isset( $_POST["step"] ) and $_POST["step"] >= 1 and $_POST["step"]<= 4 ) {
call_user_func( "processStep" . (int)$_POST["step"] );
} else {
displayStep1();
}
function processStep1() {
displayStep2();
}
function processStep2() {
if ( isset( $_POST["submitButton"] ) and $_POST["submitButton"] =="< Back" ) {
displayStep1();
} else {
displayStep3();
}
}
function processStep3() {
if ( isset( $_POST["submitButton"] ) and $_POST["submitButton"] =="< Back" ) {
displayStep2();
} else {
displayThanks();
}
}
function displayStep1() {
?>
<h1>Step 1</h1>
<form action="" method="post">
<input type="hidden" name="step" value="1" />
<input type="hidden" name="number2" value="" />
<label for="number">Combien de chiffres?</label>
<input type="text" name="number" id="number" value=" " />
<div style="clear: both;">
<input type="submit" name="submitButton" id="nextButton" value="Next" />
</form>
<?php
}
function displayStep2() {
?>
<h1>Step 2</h1>
<form action="" method="post">
<input type="hidden" name="step" value="2" />
<input type="hidden" name="number" value="" />
<label for="number2">Combien de lettre pour chaque chiffres?</label>
<?php
$num = $_POST['number'];
for ($i = 1; $i <= $num; $i++) {
echo "Numero ";
echo $i;
?>
<input type="text" name="number2" id="number2"/>
<?php
}
?>
<div style="clear: both;">
<input type="submit" name="submitButton" id="nextButton" value="Next >" />
<input type="submit" name="submitButton" id="backButton" value="< Back" />
</form>
<?php
}
function displayStep3() {
?>
<h1>Step 3</h1>
<form action="" method="post">
<input type="hidden" name="step" value="3" />
<input type="hidden" name="number" value="" />
<input type="hidden" name="number2" value="" />
<label for="number3">Choisir lettres</label>
<?php
$num = $_POST['number'];
for ($i = 1; $i <= $num; $i++) {
echo "Numero ";
echo $i;
$num2 = $_POST['number2'];
for ($j = 1; $j <= $num2; $j++) {
echo "Lettre ";
echo $j;
?>
<input type="text" name="number3" id="number3"/>
<?php
}
}
?>
<div style="clear: both;">
<input type="submit" name="submitButton" id="nextButton" value="Next >" />
<input type="submit" name="submitButton" id="backButton" value="< Back" />
</form>
<?php
}
function displayThanks() {
?>
<h1>Merci</h1>
<?php
}
?>