Я пытаюсь создать систему викторины в php и mysqli, но когда мой код пытается оценить ввод, чтобы увидеть, соответствует ли он данным сервера, он всегда оценивается как ложный.Я перепробовал все, что мог, но не смог это исправить.Любая помощь будет принята.
Это мой код.
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" id"postcomments">
<?php
$sqlanswer = "SELECT * FROM questions WHERE question_id like '$guarda'";
$executaranswer=mysqli_query($conanswer, $sqlanswer);
while( $exibiranswer = mysqli_fetch_array($executaranswer)){
echo '<INPUT TYPE="radio" NAME="answer" VALUE="';
echo $exibiranswer['alt1'];
echo '" CHECKED>';
echo $exibiranswer['alt1'];
echo '<br>';
echo '<INPUT TYPE="radio" NAME="answer" VALUE="';
echo $exibiranswer['alt2'];;
echo '">';
echo $exibiranswer['alt2'];
echo '<br>';
echo '<INPUT TYPE="radio" NAME="answer" VALUE="';
echo $exibiranswer['alt3'];
echo '">';
echo $exibiranswer['alt3'];
echo '<br>';
echo '<INPUT TYPE="radio" NAME="answer" VALUE="';
echo $exibiranswer['alt4'];
echo '">';
echo $exibiranswer['alt4'];
echo '<br>';
echo '<INPUT TYPE="radio" NAME="answer" VALUE="';
echo $exibiranswer['alt5'];
echo '">';
echo $exibiranswer['alt5'];
echo '<br>';
echo '<INPUT TYPE="hidden" NAME="question_id" VALUE="';
echo $guarda;
echo '">';
echo '<INPUT TYPE="hidden" NAME="user_id" VALUE="';
echo $logado;
echo '">';
}
?>
<input class="formstyletwo" type="submit" name="submit" value="Send">
</form>
<?php
if(isset($_POST['submit'])){
$answer = "";
$question_id = "";
$user_id = "";
$AVATAR = "";
$sqlanswer = "SELECT * FROM questions WHERE question_id like '$guarda'";
$executaranswer=mysqli_query($conanswer, $sqlanswer);
while( $exibiranswer = mysqli_fetch_array($executaranswer)){
// This is the part it goes wrong. //
if ($_POST['answer'] == $exibiranswer['resposta']){
$finalanswer = 'YES';
} else {
$finalanswer = 'NO';
}
}
if(isset($_POST["question_id"]))
$question_id = $_POST["question_id"];
if(isset($_POST["user_id"]))
$user_id = $_POST["user_id"];
if(isset($finalanswer, $_POST["question_id"], $_POST["user_id"]));
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
Ввод выбирается нажатием одного из содержимого в списке, и есть 4 неправильных выбора, и один правильный,Но даже когда я выбираю правильный, он оценивается как ложный.
Выбранное содержимое сохраняется по индексу, а правильный ответ также сохраняется в базе данных по индексу.Так что не должно быть способа, чтобы он оценивал значение false, потому что на самом деле это другое целое число (обычно).
Спасибо за ваше время.