PHP 简单答题系统
--sample 1:
<!DOCTYPE html>
<html>
<head>
<title>登录</title>
<style type="text/css">
table{
margin:0 auto;
}
td{
text-align:center;
}
</style>
</head>
<body>
<form action="EX7_4_main.php" method="get">
<table border="0">
<tr>
<td>用户名<input name="username" type="text"></td>
</tr>
<tr>
<td>密码<input name="password" type="password"></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="Submit" value="登录">
<input type="reset" name="Submit2" value="重置">
</td>
</tr>
</table>
</form>
</body>
</html>
-sample 2
<?php
session_start();
$username=@$_GET['username']; //获取用户名
$password=@$_GET['password']; //获取密码
//本函数用于获取文本文件中的用户数据
function loadinfo()
{
$user_array=array();
$filename='EX7_4_info.txt'; //用户信息文件
$fp=fopen($filename,"r"); //打开文件
$i=0;
while($line=fgets($fp,1024))
{
list($user,$pwd)=explode('|',$line); //读取每行数据
$user=trim($user); //去掉首尾特殊符号
$pwd=trim($pwd);
$user_array[$i]=array($user,$pwd); //将数组组成一个二维数组
$i++;
}
fclose($fp);
return $user_array; //返回一个数组
}
$user_array=loadinfo();
if($username)
{
//判断用户输入用户名和密码是否正确
if(!in_array(array($username,$password),$user_array))
echo "<script>alert('用户名或密码错误!');location='EX7_4_login.php';</script>";
else
{
foreach($user_array AS $value) //遍历数组
{
list($user,$pwd)=$value;
if($user==$username&&$pwd==$password)
{
//使用Session将用户名和密码传到其他页面
$_SESSION['username']=$username;
$_SESSION['password']=$password;
echo "<div>您的用户名为:".$user."</div>";
echo "<br/>";
//得到EX7_4_QA.php中使用Session传来的值
if($points=@$_SESSION['QA_points'])
{
echo "您刚刚答题得到了".$points."分<br/>";
echo "<input type='button' value='继续答题'
onclick=window.location='EX7_4_QA.php'>";
}
else
{
echo "您还没有答题记录<br/>";
echo "<input type='button' value='开始答题'
onclick=window.location='EX7_4_QA.php'>";
}
}
}
}
}
else
echo "您尚未登录,无权访问本页";
?>
sample 3:
<?php
session_start();
$username=@$_SESSION['username'];
$password=@$_SESSION['password'];
if($username)
{
echo $username.",请回答以下题目:<br/>";
?>
<form method="post" action="">
<div>
1. 农夫有17只羊,除了9只以外都病死了,农夫还剩几只羊?<br/>
<input type="radio" name="q1" value="1">17
<input type="radio" name="q1" value="2">9
<input type="radio" name="q1" value="3">8
</div>
<br/>
<div>
2. 大月有31天,小月有30天,那么一年中几个月有28天?<br/>
<input type="radio" name="q2" value="1">1个
<input type="radio" name="q2" value="2">4年一个
<input type="radio" name="q2" value="3">12个
</div>
<br/>
<div>
3. 小明的妈妈有三个小孩,老大叫大毛,老二叫二毛,老三叫什么?<br/>
<input type="radio" name="q3" value="1">三毛
<input type="radio" name="q3" value="2">小明
<input type="radio" name="q3" value="3">不知道
</div>
<br/>
<div>
4. 英国有没有七月四日(美国独立纪念日)?<br/>
<input type="radio" name="q4" value="1">有
<input type="radio" name="q4" value="2">没有
<input type="radio" name="q4" value="3">不知道
</div>
<br/>
<div>
5. 医生给你3个药丸,要你每30分钟吃1个,这些药丸多久后会被吃完?<br/>
<input type="radio" name="q5" value="1">90分钟
<input type="radio" name="q5" value="2">60分钟
<input type="radio" name="q5" value="3">30分钟
</div>
<br/>
<input type="submit" value="提交" name="submit">
</form>
<?php
if(isset($_POST['submit']))
{
$q1=@$_POST['q1'];
$q2=@$_POST['q2'];
$q3=@$_POST['q3'];
$q4=@$_POST['q4'];
$q5=@$_POST['q5'];
$i=0;
if($q1=="1")
$i++;
if($q2=="3")
$i++;
if($q3=="2")
$i++;
if($q4=="1")
$i++;
if($q5=="2")
$i++;
$_SESSION['QA_points']=$i*20; //使用Session将答题所得分数传到其他页面
echo "<script>alert('您一共答对".$i."道题,得到".($i*20)."分');";
echo "if(confirm('返回继续答题?'))";
echo "window.location='EX7_4_QA.php';";
echo "else ";
//使用get方法提交本页面的用户信息
echo "window.location='EX7_4_main.php?username=$username&password=$password';"; echo "</script>";
}
}
else
echo "您尚未登录,无权访问本页";
?>