制作一个“;“多页”;一个php文件中的web调查


Make a "multi-page" web survey within a single .php file

这是我使用.php的第一天,我正试图从头开始创建一个调查。我已经制作了一个index.php,用户在其中输入他们的电子邮件地址,然后被转发到实际的调查页面,我对此有问题。

在调查页面上,用户会看到一段视频。用户被要求对该视频进行评分,评分范围从1到5,然后提交结果。这将重复十次,每次都有不同的视频。我想避免制作10个不同的.php页面,并想知道是否可以制作一个循环,重复10次,并在每次"提交"后重新加载页面。我在html代码中嵌入了视频,如下所示:

<embed src="video1.mov" width="200" height="240" controller="true">

但我不知道一旦点击提交按钮,如何更改为不同的视频。

这是我目前拥有的调查代码:

<?PHP
$one = 'unchecked';
$two = 'unchecked';
$three = 'unchecked';
$four = 'unchecked';
$five = 'unchecked';
if (isset($_POST['submit'])) {
    $selected_radio = $_POST['part1'];
        if ($selected_radio == 'one') {
            $one = 'checked';
        }
        else if ($selected_radio == 'two') {
            $two = 'checked';
        }
        else if ($selected_radio == 'three') {
            $three = 'checked';
        }
        else if ($selected_radio == 'four') {
            $four = 'checked';
        }
        else if ($selected_radio == 'five') {
            $five = 'checked';
        }
    }
?>
<FORM NAME ="evalpart1" METHOD ="POST" ACTION ="setup1.php">
<INPUT TYPE = 'Radio' Name ='part1'  value= 'one' <?PHP print $one; ?>>1
<INPUT TYPE = 'Radio' Name ='part1'  value= 'two' <?PHP print $two; ?>>2
<INPUT TYPE = 'Radio' Name ='part1'  value= 'three' <?PHP print $three; ?>>3
<INPUT TYPE = 'Radio' Name ='part1'  value= 'four' <?PHP print $four; ?>>4
<INPUT TYPE = 'Radio' Name ='part1'  value= 'five' <?PHP print $five; ?>>5
<P>
<INPUT TYPE = "submit" Name = "submit1"  VALUE = "Submit">
</FORM>

如果你有任何技巧甚至教程可以给我,我会非常感激,我的网络搜索到目前为止还没有成功。

循环只会一次将所有视频放在同一页面上。如果你想在每次提交后显示一个新的,你可以使用一个数组来保存视频文件名,并使用隐藏的输入来跟踪页码,比如:

$videos = array('video1.mov', 'video2.mov', 'video3.mov');
$pagenumber = 0; //for when post is not set
if(isset($_POST))
{
   //if post is set, get pageid from post
   $pagenumber = intval($_POST['pageid']); //used as index to $videos array
}
$nextpagenumber = intval($pagenumber) + 1; //increment pageid for next page
echo "<embed src='{$videos[$pagenumber]}' width='200' height='240' controller='true'>";
...
<input type='hidden' name='pageid' value='<?php echo $nextpagenumber; ?>' />
<input type="submit" name="submit1" value="Submit" />
</form>

我个人会在提交$n++时将视频放入一个数组中,其中$n=0

$videos=array('video1','video2','video3','video4','video5','video6','video7','video8','video9','video10');

然后用于每个

forech ($videos as $video){ ADD YOU RATING SYSTEM HERE}

不要忘记循环