使用PHP将可定制的问答存储在.txt文件中

使用PHP将可定制的问答存储在.txt文件中,php,html,arrays,text,Php,Html,Arrays,Text,我有一个可定制的测验网站,用户可以在那里输入问题和答案。我的第一个PHP文件获取输入的信息并生成一个测验页面。答案在隐藏文本框中。然后,第二个PHP将输入的单选按钮与隐藏的文本框进行比较,以查看用户是否正确,并给出与此相关的分数。我想将问题和答案存储在一个.txt文件中,其他用户可以访问该文件,不幸的是,作为项目的一部分,我们无法使用MySQL。希望我是清楚的,我尝试了很多方法,但都破坏了我的代码。任何想法都将不胜感激 我的代码如下: 初始HTML: <head> <meta

我有一个可定制的测验网站,用户可以在那里输入问题和答案。我的第一个PHP文件获取输入的信息并生成一个测验页面。答案在隐藏文本框中。然后,第二个PHP将输入的单选按钮与隐藏的文本框进行比较,以查看用户是否正确,并给出与此相关的分数。我想将问题和答案存储在一个.txt文件中,其他用户可以访问该文件,不幸的是,作为项目的一部分,我们无法使用MySQL。希望我是清楚的,我尝试了很多方法,但都破坏了我的代码。任何想法都将不胜感激

我的代码如下:

初始HTML:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>


</head>

<body>

<form action="actions.php" method="post">
<strong>Question 1:</strong> <input name="q1" type="text" /> <br />
Answer 1: <br />
<input name="a11" type="text" /><input name="1" type="radio" value="1.1" /><br />
Answer 2: <br />
<input name="a12" type="text" /><input name="1" type="radio" value="1.2" /><br />
Answer 3: <br />
<input name="a13" type="text" /><input name="1"type="radio" value="1.3"  /><br />
Answer 4: <br />
<input name="a14" type="text" /><input name="1" type="radio" value="1.4" />
<br /><br />


<strong>Question 2:</strong> <input name="q2" type="text" /> <br />
Answer 1: <br />
<input name="a21" type="text" /><input name="2" type="radio" value="2.1" /><br />
Answer 2: <br />
<input name="a22" type="text" /><input name="2" type="radio" value="2.2" /><br />
Answer 3: <br />
<input name="a23" type="text" /><input name="2"type="radio" value="2.3"  /><br />
Answer 4: <br />
<input name="a24" type="text" /><input name="2" type="radio" value="2.4" />
<br /><br />

<strong>Question 3:</strong> <input name="q3" type="text" /> <br />
Answer 1: <br />
<input name="a31" type="text" /><input name="3" type="radio" value="3.1" /><br />
Answer 2: <br />
<input name="a32" type="text" /><input name="3" type="radio" value="3.2" /><br />
Answer 3: <br />
<input name="a33" type="text" /><input name="3"type="radio" value="3.3"  /><br />
Answer 4: <br />
<input name="a34" type="text" /><input name="3" type="radio" value="3.4" />


<input name="" type="submit" />
</form>
</body>

无标题文件
问题1:
答案1:

答案二:

回答3:

回答4:


问题2:
答案1:

答案二:

回答3:

回答4:


问题3:
答案1:

答案二:

回答3:

回答4:
第一个PHP:

<html>
<body>
<form action="actions2.php" method="post">
<strong><?php echo $_POST["q1"];?></strong>
<br /><br />
<?php



echo $_POST["a11"]."<input name='newa1' type='radio' value='1.1' />"."<br />".$_POST["a12"]."<input name='newa1' type='radio' value='1.2' />"."<br />".$_POST["a13"]."<input name='newa1' type='radio' value='1.3' />"."<br />".$_POST["a14"]."<input name='newa1' type='radio' value='1.4' />"."<br />";

echo "<br /><br />"

?>

<strong><?php echo $_POST["q2"];?></strong>
<br><br>
<?php



echo $_POST["a21"]."<input name='newa2' type='radio' value='2.1' />"."<br />".$_POST["a22"]."<input name='newa2' type='radio' value='2.2' />"."<br />".$_POST["a23"]."<input name='newa2' type='radio' value='2.3' />"."<br />".$_POST["a24"]."<input name='newa2' type='radio' value='2.4' />"."<br />";

echo "<br /><br />"

?>

<strong><?php echo $_POST["q3"];?></strong>
<br><br>
<?php



echo $_POST["a31"]."<input name='newa3' type='radio' value='3.1' />"."<br />".$_POST["a32"]."<input name='newa3' type='radio' value='3.2' />"."<br />".$_POST["a33"]."<input name='newa3' type='radio' value='3.3' />"."<br />".$_POST["a34"]."<input name='newa3' type='radio' value='3.4' />"."<br />";

echo "<br /><br />"



?>



<input name="result1" type="hidden" value="<?php echo $_POST['1']; ?>">
<input name="result2" type="hidden" value="<?php echo $_POST['2']; ?>">
<input name="result3" type="hidden" value="<?php echo $_POST['3']; ?>">



<input name="" type="submit" />

</form>



<br /><br />
</body>
</html>





我不完全确定您想要什么,但是如果您需要一种存储问题和答案的方法,您可以查看XML或JSON


PHP应该有库来对它们进行编码/解码

我不确定自己是否很好地理解了这个问题,但这就是使用PHP存储在.txt文件中的方式。
也看看这个

没有借口使用dbSidenotes:一些事情<代码>等。输入变量不能以数字开头,加上您的值中有点,这可能会被解释为与数学相关的值。另外,如果您打算使用文本文件,并且您能够在服务器上使用
.htaccess
(显然nginx不能使用.htaccess)来保护它们免受窥探。此外,将提交按钮留在
name=“
上可能会对您造成恶作剧。虽然我从未见过这样的案子,如果会的话。最好实际命名,以防万一<代码>我意识到语法并不理想,但我只是在测试这个网站(顺便说一句,它工作得很好)。正如我在下面的答案中所说的,我们在我们的简介中仅限于HTML和PHP,并且允许使用.txt文件。不幸的是,简短的限制仅限于PHP和HTML,数据库是不允许的。@ GRIGEGGS:这个答案不涉及任何数据库。如果您认为XML和JSON是“数据库”。那么你也应该考虑一个.txt文件数据库。抱歉,我不应该提到数据库。我刚刚反复被告知,当我们仅限于HTML、PHP和.txt文件时,请使用“数据库”。然后使用
json\u encode()
并将输出保存到.txt文件中。
<?php




$correctAnswer1 = $_POST['result1'];
$newAnswer1 = $_POST['newa1'];
$correctAnswer2 = $_POST['result2'];
$newAnswer2 = $_POST['newa2'];
$correctAnswer3 = $_POST['result3'];
$newAnswer3 = $_POST['newa3'];
$score = 0;

if($newAnswer1 == $correctAnswer1) {
    $score++;
}
if($newAnswer2 == $correctAnswer2) {
    $score++;
}

if($newAnswer3 == $correctAnswer3) {
    $score++;
}

if ($score >= 2)
{
    echo "Congratulations, you did well. You got ".$score;
}
else if ($score == 1)
{
    echo "Only one, poor show";
}
else 
{
    echo "YOU GOT ZERO YOU SHITE";
}
?>