about php coding

[php]<?php
session_start();
include(“database.php”);
extract($_POST);
extract($_GET);
extract($_SESSION);
/$rs=mysql_query(“select * from mst_question where test_id=$tid”,$cn) or die(mysql_error());
if($_SESSION[qn]>mysql_num_rows($rs))
{
unset($_SESSION[qn]);
exit;
}
/
if(isset($subid) && isset($testid))
{
$_SESSION[sid]=$subid;
$_SESSION[tid]=$testid;
header(“location:quiz.php”);
}
if(!isset($_SESSION[sid]) || !isset($_SESSION[tid]))
{
header(“location: index.php”);
}
?>

Online Quiz <?php include("header.php");

$query=“select * from mst_question”;

$rs=mysql_query(“select * from mst_question where test_id=$tid”,$cn) or die(mysql_error());
if(!isset($_SESSION[qn]))
{
$_SESSION[qn]=0;
mysql_query(“delete from mst_useranswer where sess_id=’” . session_id() ."’") or die(mysql_error());
$_SESSION[trueans]=0;

}
else
{
if($submit==‘Next Question’ && isset($ans))
{
mysql_data_seek($rs,$_SESSION[qn]);
$row= mysql_fetch_row($rs);
mysql_query(“insert into mst_useranswer(sess_id, test_id, que_des, ans1,ans2,ans3,ans4,true_ans,your_ans) values (’”.session_id()."’, $tid,’$row[2]’,’$row[3]’,’$row[4]’,’$row[5]’, ‘$row[6]’,’$row[7]’,’$ans’)") or die(mysql_error());
if($ans==$row[7])
{
$_SESSION[trueans]=$_SESSION[trueans]+1;
}
$_SESSION[qn]=$_SESSION[qn]+1;
}
else if($submit==‘Get Result’ && isset($ans))
{
mysql_data_seek($rs,$_SESSION[qn]);
$row= mysql_fetch_row($rs);
mysql_query(“insert into mst_useranswer(sess_id, test_id, que_des, ans1,ans2,ans3,ans4,true_ans,your_ans) values (’”.session_id()."’, $tid,’$row[2]’,’$row[3]’,’$row[4]’,’$row[5]’, ‘$row[6]’,’$row[7]’,’$ans’)") or die(mysql_error());
if($ans==$row[7])
{
$_SESSION[trueans]=$_SESSION[trueans]+1;
}
echo "

Result

";
$_SESSION[qn]=$_SESSION[qn]+1;
echo “
Total Question $_SESSION[qn]”;
echo “
True Answer ”.$_SESSION[trueans];
$w=$_POST[qn]-$_SESSION[trueans];
echo “
Wrong Answer “. $w;
echo “
”;
mysql_query(“insert into mst_result(login,test_id,test_date,score) values(’$login’,$tid,’”.date(“d/m/Y”).”’,$_SESSION[trueans])”) or die(mysql_error());
echo "

Review Question

";
unset($_SESSION[qn]);
unset($_SESSION[sid]);
unset($_SESSION[tid]);
unset($_SESSION[trueans]);
exit;
}
}
$rs=mysql_query(“select * from mst_question where test_id=$tid”,$cn) or die(mysql_error());
if($_SESSION[qn]>mysql_num_rows($rs)-1)
{
unset($_SESSION[qn]);
echo “

Some Error Occured

”;
session_destroy();
echo “Please Start Again”;

exit;
}

mysql_data_seek($rs,$_SESSION[qn]);
while ($row = mysql_fetch_array($rs)) {
echo “”;
echo "

  “;
echo “
$row[2]”;
echo “
$row[3]”;
echo "
$row[4]”;
echo “
$row[5]”;
echo “
$row[6]”;
echo “
”;

if($_SESSION[qn]<mysql_num_rows($rs)-1)
echo “

”;
else
echo “
”;

echo “

”;
}
?> [/php]

Question: I want to improve my code I want previous and skip button in my quiz what can i do for it without disturbing my database please help me

Break it down into mini-steps…

  1. Add the Previous and Skip button to your form.
  2. Determine if the user clicked the previous or Skip button
  3. Change the query in your code to go back or forward one question.

Take it one step at a time, it makes a large task seem much smaller and easier to work with. You have a good code base, it just needs modifications.

So in order to do the first step outlined above find this code…

[php] if($_SESSION[qn]<mysql_num_rows($rs)-1)
echo “

”;
else
echo “”;

echo “”;
}
?>[/php]

Then modify it…

[php] if($_SESSION[qn]<mysql_num_rows($rs)-1)
echo "


echo "
echo “”;
else
echo "
echo “”;

echo “”;
}
?>[/php]

See how I added the buttons you wanted?

Now try step 2 on your own, hint you will be adding two more else if statements to this if statement in your code…

[php]if($submit==‘Next Question’ && isset($ans))[/php]

Sponsor our Newsletter | Privacy Policy | Terms of Service