gpt4 book ai didi

php - 将多个输入与数据库进行匹配

转载 作者:行者123 更新时间:2023-11-29 13:23:05 25 4
gpt4 key购买 nike

我正在尝试制作一个自测试页面,其中 php 将输入与数据库进行匹配并检查答案是否正确。但到目前为止我不知道如何让它单独检查所有答案。到目前为止,我得到的脚本只有在所有答案都错误的情况下才有效。我该如何在 PHP 中执行此操作?

这是我到目前为止的代码:

    <?php 
$host = "localhost";
$user = "root";
$pwd = "";
$db_name = "flashcards";
$link = mysqli_connect($host, $user, $pwd, $db_name)or die("cannot connect");

$sql = mysqli_query($link, "SELECT * FROM Questions ORDER BY ID ASC LIMIT 25") or die(mysqli_error($link));
echo "<form action='".$_SERVER['PHP_SELF']."' method='post'><table border='1'>";
while ($rows = mysqli_fetch_assoc($sql))
{
echo "<tr><td value='".$rows['ID']."'>".$rows['Question']."</td><td><input type='text' name='Answer'></input></td></tr>";
}
echo "</table><input type='submit' name='submit'>test</input></form>";
if (isset($_POST['submit']))
{
if ($_POST['Answer'] != $rows['Answer'])
{
echo "wrong!";
}
else
{
echo "right";
}
}

?>

最佳答案

问题出在这里:

<input type='text' name='Answer'></input>

问题在于所有答案输入都具有相同的“名称”,因此对于您回答的每个字段,值(答案字符串)都会被覆盖。

为了解决这个问题,您需要获得一系列答案,如下所示:

<input type='text' name='Answer[]'></input>

然后,迭代它:

foreach($_POST['Answer'] as $answer)
if (isset($_POST['submit']))
{
if ($answer != $rows['Answer'])
//...

关于php - 将多个输入与数据库进行匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20517244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com