Проблем с код

Dizasterr

Registered
Здравейте! Написах си този код, но имам следните грешки:
1. Не записва сесията при правилен отговор. Не увеличава сесията с едно.
2. Когато сложа header не изпълнява тази проверка и не изкарва дали е верен отговора.

Код:
<?php
		require_once("../connection.php");
		mysql_query("SET NAMES cp1251");
		
		$_SESSION['test'] = "0";
		$ses = $_SESSION['test'];
		$question=$_GET['question'];
		$p=$question + '1';
		if($question == 0) {
		if(isset($_POST['submit'])) {
		$name=$_POST['name'];
		$_SESSION['name']="$name";
		header("Location: test.php?question=1");
		}
		}
		if($question > 0 && $question <= 10) {
		if(!(isset($_SESSION['name']))) {
		die("Трябва да напишете името си за да започнете теста!!");
		}
		$sel=mysql_query("SELECT * FROM `questions` WHERE `number`='$question'") or die(mysql_error());
		$r=mysql_fetch_assoc($sel); 
		$questions=$r['question'];
		echo "<b style='color: #FFF;'>".$questions."</b>";
		echo "<br/><br/>";
		$select=mysql_query("SELECT * FROM `questions` as u LEFT JOIN `answers` as r ON r.question_number = u.number WHERE `number`='$question'") or die(mysql_error());
		echo "<form method='post' action=''>";
		while($row=mysql_fetch_array($select)) {
		echo "<b style='color: #FFF;'><input type='radio' name='answer' value='".$row['firstanswer']."'>".$row['firstanswer']."<br/>";
		echo "<input type='radio' name='answer' value='".$row['secondanswer']."'>".$row['secondanswer']."<br/>";
		echo "<input type='radio' name='answer' value='".$row['thirdanswer']."'>".$row['thirdanswer']."</b><br/>";
		$rightanswer=$row['rightanswer'];
	echo "<br/><br/>";
		}
		echo "<input type='submit' name='yanswer' value='Отговори'>";
		echo "</form>";

		if(isset($_POST['yanswer'])) {
		$answer=$_POST['answer'];
		echo $answer;
		if(empty($answer)) {
		die("Трябва да посочите отговор!");
		}
		echo $rightanswer;
		echo "<br/><br/>";
		if($rightanswer == $answer) {		
		$_SESSION['test'] = $ses + '1';	
		echo "<br/><br/>";
		echo "OK";		
		}else{
		echo "<br/><br/>";
		echo "KK";

		}

		}
		
		}
		
		echo $ses;
		
		if($p >= 12) {
		$namep=$_SESSION['name'];
		$mark = ($ses / 10) * 100; 
		$s=mysql_query("INSERT INTO `users` (`name`,`mark`) VALUES ('$namep','$mark')") or die(mysql_error());
	
		if($s) {
			echo "Вие успешно завършихте теста. Вашата оценка е:".$mark."";	
		}else{
			echo "Възникна грешка при обработката на информация в теста ви!";
		}
		}
		
?>
<br/><br/>
<?php
if($question == 0) {
echo '<form method="post" action="">';
echo '<b style="color: #FFF;">Име:</b><input type="text" name="name" maxlength="20"><br/><br/>';
echo '<input type="submit" name="submit" value="Започни теста"> '; 
echo '</form>';
}
?>
 
<?php
session_start();
ob_start();
require_once("../connection.php");
mysql_query("SET NAMES cp1251");

$_SESSION['test'] = "0";
$ses = $_SESSION['test'];
$question=$_GET['question'];
$p=$question + '1';
if($question == 0) {
if(isset($_POST['submit'])) {
$name=$_POST['name'];
$_SESSION['name']="$name";
header("Location: test.php?question=1");
}
}
if($question > 0 && $question <= 10) {
if(!(isset($_SESSION['name']))) {
die("Трябва да напишете името си за да започнете теста!!");
}
$sel=mysql_query("SELECT * FROM `questions` WHERE `number`='$question'") or die(mysql_error());
$r=mysql_fetch_assoc($sel);
$questions=$r['question'];
echo "<b style='color: #FFF;'>".$questions."</b>";
echo "<br/><br/>";
$select=mysql_query("SELECT * FROM `questions` as u LEFT JOIN `answers` as r ON r.question_number = u.number WHERE `number`='$question'") or die(mysql_error());
echo "<form method='post' action=''>";
while($row=mysql_fetch_array($select)) {
echo "<b style='color: #FFF;'><input type='radio' name='answer' value='".$row['firstanswer']."'>".$row['firstanswer']."<br/>";
echo "<input type='radio' name='answer' value='".$row['secondanswer']."'>".$row['secondanswer']."<br/>";
echo "<input type='radio' name='answer' value='".$row['thirdanswer']."'>".$row['thirdanswer']."</b><br/>";
$rightanswer=$row['rightanswer'];
echo "<br/><br/>";
}
echo "<input type='submit' name='yanswer' value='Отговори'>";
echo "</form>";

if(isset($_POST['yanswer'])) {
$answer=$_POST['answer'];
echo $answer;
if(empty($answer)) {
die("Трябва да посочите отговор!");
}
echo $rightanswer;
echo "<br/><br/>";
if($rightanswer == $answer) {
$_SESSION['test'] = $ses + '1';
echo "<br/><br/>";
echo "OK";
}else{
echo "<br/><br/>";
echo "KK";

}

}

}

echo $ses;

if($p >= 12) {
$namep=$_SESSION['name'];
$mark = ($ses / 10) * 100;
$s=mysql_query("INSERT INTO `users` (`name`,`mark`) VALUES ('$namep','$mark')") or die(mysql_error());

if($s) {
echo "Вие успешно завършихте теста. Вашата оценка е:".$mark."";
}else{
echo "Възникна грешка при обработката на информация в теста ви!";
}
}

?>
<br/><br/>
<?php
if($question == 0) {
echo '<form method="post" action="">';
echo '<b style="color: #FFF;">Име:</b><input type="text" name="name" maxlength="20"><br/><br/>';
echo '<input type="submit" name="submit" value="Започни теста"> ';
echo '</form>';
}
?>
 
Така ми изкарва директно оценката, а аз искам да проверява дали е верен и да пренасочва така:
Код:
header("Location: test.php?question=".$p."");
 

Back
Горе