程序设计
-----------------------------------------------------------------------------------------------------------------
Index.php————选择界面,并且实现学生和老师的注册
sql_ini.php————SQL配置文件
./student————学生的后台
./admin————老师的后台
-----------------------------------------------------------------------------------------------------------------
./student
cookie.php————cookie转跳文件
index1.php————后台界面
login.php————登录界面
loginout.php————cookie注销处理
main.php————主界面
menu.php————后台菜单
sclass.php————显示学生选课信息
score.php-————显示学生成绩
sinfo.php————显示学生资料
sql_ini.php————SQL配置文件
up.php————后台表单处理文件
-----------------------------------------------------------------------------------------------------------------
./admin
class.php————显示老师课程信息
cookie.php————cookie转跳文件
index1.php————后台界面
info.php————显示老师资料(有权限设置)
login.php————登录界面
loginout.php————cookie注销处理
main.php————主界面
menu.php————后台菜单
score.php-————登记学生成绩
sql_ini.php————SQL配置文件
up.php————后台表单处理文件
程序解释
学生注册
1 if(isset($_POST['addstudent'])) 2 { 3 //判断是否有空,即没有输入的 4 if(($_POST['sname']=='')||($_POST['sex']=='')||($_POST['school']=='')||($_POST['scount']=='')||($_POST['spwd1']=='')||($_POST['spwd2']=='')) 5 { 6 echo '请输全信息!'; 7 exit(); 8 } 9 //把传递的数据赋值到变量里面 10 $sname=$_POST['sname']; 11 $sex=$_POST['sex']; 12 $school=$_POST['school']; 13 $scount=$_POST['scount']; 14 $spwd1=$_POST['spwd1']; 15 $spwd2=$_POST['spwd2']; 16 $sid=rand(1,9999);//随机一个学号 17 //判断两次密码是不是相同 18 if($spwd1==$spwd2) 19 { 20 //SQL Server 对数据处理前的操作 21 sql(); 22 //SQL语句 23 $sql="select * from [V3].[dbo].[V3_student]"; 24 $result = mssql_query($sql); 25 //从结果集中取得一行作为关联数组 26 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 27 { 28 //二次判断是否登录帐号重复 29 if($row['scount']==$scount) 30 { 31 //报错并终止 32 echo ("已经有人申请了这个帐号!"); 33 exit(); 34 } 35 } 36 //SQL语句插入到视图里面 37 $sql_add="INSERT INTO [V3].[dbo].[V3_student] ([sid],[sex],[sname],[school],[scount],[spwd]) 38 VALUES (".$sid.",'".$sex."','".$sname."','".$school."','".$scount."','".$spwd1."')"; 39 $result_add = mssql_query($sql_add); 40 //对SQL操作的结果的判断 41 if($result_add) 42 {echo "<center>注册成功!</center>";} 43 else 44 {echo "sql出错!";} 45 } 46 else 47 { 48 //密码不相同报错并终止 49 echo ("两次密码不对"); 50 exit(); 51 } 52 }
老师注册
1 if(isset($_POST['addadmin'])) 2 { 3 //判断是否有空,即没有输入的 4 if(($_POST['name']=='')||($_POST['sex']=='')||($_POST['age']=='')||($_POST['count']=='')||($_POST['pwd']=='')||($_POST['pwd2']=='')||($_POST['ageage']=='')||($_POST['tel']=='')||($_POST['address']=='')) 5 { 6 echo '请输全信息!'; 7 exit(); 8 } 9 //把传递的数据赋值到变量里面 10 $tname=$_POST['name']; 11 $tsex=$_POST['sex']; 12 $tage=$_POST['age']; 13 $tcount=$_POST['count']; 14 $tpwd=$_POST['pwd']; 15 $tpwd2=$_POST['pwd2']; 16 $age=$_POST['ageage']; 17 $tel=$_POST['tel']; 18 $address=$_POST['address']; 19 $tsuper=1; 20 $tidid=rand(1,9999); 21 //判断两次密码是否相同 22 if($tpwd==$tpwd2) 23 { 24 //SQL Server 对数据处理前的操作 25 sql(); 26 //SQL语句 27 $sql="select * from [V3].[dbo].[teacher]"; 28 $result = mssql_query($sql); 29 //从结果集中取得一行作为关联数组 30 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 31 { 32 //二次判断是否登录帐号重复 33 if($row['tcount']==$tcount) 34 { 35 //报错并终止 36 echo ("已经有人申请了这个帐号!"); 37 exit(); 38 } 39 } 40 $sql_add="EXEC [V3].[dbo].[V3_teacher] ".$tidid.",'".$tname."', '".$tage."', '".$tsex."', '".$tcount."', '".$tpwd."', '".$tsuper."','".$age."','".$tel."','".$address."'"; 41 $result_add = mssql_query($sql_add); 42 if($result_add) 43 {echo "<center>注册成功!</center>";} 44 else 45 {echo "sql出错!";} 46 } 47 else 48 { 49 //报错并终止 50 echo ("两次密码不对"); 51 exit(); 52 } 53 }
学生登录和查看资料
1 //cookie传递id 2 $sid=$_COOKIE['uid']; 3 sql(); 4 //SQL 语句 5 $query = "SELECT * FROM [V3].[dbo].[V3_student] where [sid]=".$sid.""; 6 $result = mssql_query($query); 7 //取得这个表有多少列 8 $db_t_num=mssql_num_fields($result); 9 //保存字段中文含义 10 $arrname[0]='学号'; 11 $arrname[1]='姓名'; 12 $arrname[2]='学院'; 13 $arrname[3]='帐号'; 14 $arrname[4]='密码'; 15 /******************* 16 HTML表格输出 17 *******************/ 18 echo "<table border='1' > "; 19 echo " <tr> "; 20 for($num=0;$num<$db_t_num;$num++) 21 { 22 //输出字段中文含义 23 echo " <td>".$arrname[$num]."</td> "; 24 } 25 echo " </tr> "; 26 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 27 { 28 //输出内容 29 echo " <tr> "; 30 echo '<td>'.$row["sid"].'</td>'; 31 echo '<td>'.$row["sname"].'</td>'; 32 echo '<td>'.$row["school"].'</td>'; 33 echo '<td>'.$row["scount"].'</td>'; 34 echo '<td>******</td>';//隐藏的写法 35 echo " </tr> "; 36 } 37 echo "</table> "; 38 //释放SQL链接 39 mssql_free_result($result);
学生选课
1 //GET得到是选课操作 2 if($_GET['action']=='do') 3 { 4 //cookie传递sid 5 $id=$_COOKIE["uid"]; 6 sql(); 7 //sid选了什么课,使check打上勾 8 $sql_do="SELECT * FROM [V3].[dbo].[class] where [sid]=".$id.""; 9 $result_do = mssql_query($sql_do); 10 $ii=0;//保存学生所选的课 11 while ($row = mssql_fetch_array($result_do, MSSQL_ASSOC)) 12 { 13 $s_cid_do[$ii]=$row['cid']; 14 $ii++; 15 } 16 17 //SQL语句通过默认学生sid=0取得课名cname和课号cid和老师tid 18 $sql_class="SELECT * FROM [V3].[dbo].[class] where [sid] = 0"; 19 $result_class = mssql_query($sql_class); 20 $i=0;//保存有多少行 21 while ($row = mssql_fetch_array($result_class, MSSQL_ASSOC)) 22 { 23 $class_tid[$i]=$row['tid']; 24 $class_cid[$i]=$row['cid']; 25 $class_name[$i]=$row['cname']; 26 $i++; 27 } 28 //SQL语句通过tid取得老师名字,教学年龄和性别 29 for($a=0;$a<$i;$a++) 30 { 31 $sql_t[$a]="SELECT * FROM [V3].[dbo].[teacher] where [tid]=".$class_tid[$a].""; 32 $result_t[$a]= mssql_query($sql_t[$a]); 33 while ($class_t = mssql_fetch_array($result_t[$a], MSSQL_ASSOC)) 34 { 35 $class_tsex[$a]=$class_t['tsex']; 36 $class_tage[$a]=$class_t['tage']; 37 $class_tname[$a]=$class_t['tname']; 38 } 39 } 40 //保存字段中文含义 41 $arrname[0]='课号'; 42 $arrname[1]='课名'; 43 $arrname[2]='老师名字'; 44 $arrname[3]='老师编号'; 45 $arrname[4]='老师教学年龄'; 46 $arrname[5]='老师性别'; 47 $arrname[6]='选课'; 48 /******************* 49 HTML表格输出 50 *******************/ 51 echo '<form action="up.php" method="POST">'; 52 echo "<table border='1' > "; 53 echo " <tr><td colspan='7' align='center'>选课系统</td></tr> "; 54 echo " <tr> "; 55 echo " <tr> "; 56 //有6列 57 for($num=0;$num<7;$num++) 58 { 59 echo " <td>".$arrname[$num]."</td> "; 60 } 61 for($a=0;$a<$i;$a++) 62 { 63 //check初始化 64 $check = ''; 65 //判断是男是女 66 if($class_tsex[$a]=='0') 67 $class_tsex[$a]='男'; 68 else 69 $class_tsex[$a]='女'; 70 //判断选了这门课 71 for($b=0;$b<$ii;$b++) 72 { 73 if($class_cid[$a]==$s_cid_do[$b]) 74 { 75 $check = 'checked'; 76 } 77 } 78 echo " <tr> "; 79 echo '<td>'.$class_cid[$a].'</td>'; 80 echo '<td>'.$class_name[$a].'</td>'; 81 echo '<td>'.$class_tname[$a].'</td>'; 82 echo '<td>'.$class_tid[$a].'</td>'; 83 echo '<td>'.$class_tage[$a].'</td>'; 84 echo '<td>'.$class_tsex[$a].'</td>'; 85 echo '<td><input type="checkbox" name=pa_'.$class_cid[$a].' '.$check.'></td>';//name=pa_'.$class_cid[$a]这样写是为了出现BUG 86 echo " </tr> "; 87 } 88 echo " <tr><td colspan='7' align='center'><input type='submit' name='sub' value='确认课程'></td></tr> "; 89 echo "</table> "; 90 echo "</form>"; 91 }
学生退课
1 //GET传递操作,为退课操作 2 if($_GET['action']=='mine') 3 { 4 //cookie传递sid 5 $id=$_COOKIE["uid"]; 6 sql(); 7 //SQL语句通过学号sid取得课号cid和tid和课名 8 $sql_s="SELECT * FROM [V3].[dbo].[class] where [sid]=".$id.""; 9 $result_s = mssql_query($sql_s); 10 $i=0;//保存有多少行 11 while ($row = mssql_fetch_array($result_s, MSSQL_ASSOC)) 12 { 13 $s_cid[$i]=$row['cid']; 14 $s_cname[$i]=$row['cname']; 15 $s_tid[$i]=$row['tid']; 16 $i++; 17 } 18 //SQL语句通过tid得到上课的老师名字以及教学年龄和性别 19 for($a=0;$a<$i;$a++) 20 { 21 $sql_s_t[$a]="SELECT * from [V3].[dbo].[teacher] where [tid]=".$s_tid[$a].""; 22 $result_s_t[$a] = mssql_query($sql_s_t[$a]); 23 while ($s_t = mssql_fetch_array($result_s_t[$a], MSSQL_ASSOC)) 24 { 25 $s_tsex[$a]=$s_t['tsex']; 26 $s_tage[$a]=$s_t['tage']; 27 $s_tname[$a]=$s_t['tname']; 28 } 29 } 30 //保存字段中文含义 31 $arrname[0]='课号'; 32 $arrname[1]='课名'; 33 $arrname[2]='老师名字'; 34 $arrname[3]='老师编号'; 35 $arrname[4]='老师教学年龄'; 36 $arrname[5]='老师性别'; 37 $arrname[6]='退课'; 38 /******************* 39 HTML表格输出 40 *******************/ 41 echo '<form action="up.php" method="POST">'; 42 echo "<table border='1' > "; 43 echo " <tr><td colspan='7' align='center'>我选上的课</td></tr> "; 44 echo " <tr> "; 45 echo " <tr> "; 46 //有7列 47 for($num=0;$num<7;$num++) 48 { 49 echo " <td>".$arrname[$num]."</td> "; 50 } 51 echo " </tr> "; 52 for($a=0;$a<$i;$a++) 53 { 54 //判断是男是女 55 if($s_tsex[$a]=='0') 56 $s_tsex[$a]='男'; 57 else 58 $s_tsex[$a]='女'; 59 echo " <tr> "; 60 echo '<td>'.$s_cid[$a].'</td>'; 61 echo '<td>'.$s_cname[$a].'</td>'; 62 echo '<td>'.$s_tname[$a].'</td>'; 63 echo '<td>'.$s_tid[$a].'</td>'; 64 echo '<td>'.$s_tage[$a].'</td>'; 65 echo '<td>'.$s_tsex[$a].'</td>'; 66 echo '<td><input type="checkbox" name="ma_'.$s_cid[$a].'" ></td></td>'; 67 echo " </tr> "; 68 } 69 echo " <tr><td colspan='7' align='center'><input type='submit' name='delsub' value='确认退课'></td></tr> "; 70 echo "</table> "; 71 echo "</form>"; 72 }
学生查看成绩
1 //通过cookie得到sid 2 $id=$_COOKIE['uid']; 3 sql(); 4 //SQL语句通过学号sid取得课号cid和tid和课名 5 $sql_s="SELECT * FROM [V3].[dbo].[class] where [sid]=".$id.""; 6 $result_s = mssql_query($sql_s); 7 $i=0;//保存有多少行 8 while ($row = mssql_fetch_array($result_s, MSSQL_ASSOC)) 9 { 10 $s_cid[$i]=$row['cid']; 11 $s_cname[$i]=$row['cname']; 12 $s_tid[$i]=$row['tid']; 13 $s_score[$i]=$row['score']; 14 $i++; 15 } 16 //SQL语句通过tid得到上课的老师名字以及教学年龄和性别 17 for($a=0;$a<$i;$a++) 18 { 19 $sql_s_t[$a]="SELECT * from [V3].[dbo].[teacher] where [tid]=".$s_tid[$a].""; 20 $result_s_t[$a] = mssql_query($sql_s_t[$a]); 21 while ($s_t = mssql_fetch_array($result_s_t[$a], MSSQL_ASSOC)) 22 { 23 $s_tsex[$a]=$s_t['tsex']; 24 $s_tage[$a]=$s_t['tage']; 25 $s_tname[$a]=$s_t['tname']; 26 } 27 } 28 //保存字段中文含义 29 $arrname[0]='课号'; 30 $arrname[1]='课名'; 31 $arrname[2]='老师名字'; 32 $arrname[3]='老师编号'; 33 $arrname[4]='老师教学年龄'; 34 $arrname[5]='老师性别'; 35 $arrname[6]='分数'; 36 /******************* 37 HTML表格输出 38 *******************/ 39 echo "<table border='1' > "; 40 echo " <tr><td colspan='7' align='center'>我选上的课</td></tr> "; 41 echo " <tr> "; 42 echo " <tr> "; 43 //有7列 44 for($num=0;$num<7;$num++) 45 { 46 echo " <td>".$arrname[$num]."</td> "; 47 } 48 echo " </tr> "; 49 for($a=0;$a<$i;$a++) 50 { 51 if($s_tsex[$a]=='0') 52 $s_tsex[$a]='男'; 53 else 54 $s_tsex[$a]='女'; 55 //判断是否上成绩,若为999,则是没有上成绩 56 if($s_score[$a]=='999') 57 { 58 $s_score[$a]='未上成绩'; 59 } 60 echo " <tr> "; 61 echo '<td>'.$s_cid[$a].'</td>'; 62 echo '<td>'.$s_cname[$a].'</td>'; 63 echo '<td>'.$s_tname[$a].'</td>'; 64 echo '<td>'.$s_tid[$a].'</td>'; 65 echo '<td>'.$s_tage[$a].'</td>'; 66 echo '<td>'.$s_tsex[$a].'</td>'; 67 echo '<td>'.$s_score[$a].'</td>'; 68 69 echo " </tr> "; 70 } 71 echo "</table> ";
老师登录和查看所有资料(权限限制)
1 //GET传递信息,显示所以老师(权限限制) 2 if($_GET['people']=='all') 3 { 4 if($_COOKIE["super"]=='10') 5 { 6 sql(); 7 //SQL 语句 8 $query = "SELECT * FROM [V3].[dbo].[teacher]"; 9 $result = mssql_query($query); 10 11 /******************* 12 HTML表格输出 13 *******************/ 14 echo "<table border='1' > "; 15 //取得结果集中字段的数目 16 $db_t_num=mssql_num_fields($result); 17 //保存字段中文含义 18 $arrname[0]='编号'; 19 $arrname[1]='姓名'; 20 $arrname[2]='教学年龄'; 21 $arrname[3]='性别'; 22 $arrname[4]='登录帐号'; 23 $arrname[5]='登录密码'; 24 $arrname[6]='管理权限'; 25 26 echo " <tr> "; 27 for($num=0;$num<$db_t_num;$num++) 28 { 29 echo " <td>".$arrname[$num]."</td> "; 30 } 31 echo " </tr> "; 32 //从结果集中取得一行作为关联数组 33 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 34 { 35 //判断之后显示男女中文 36 if($row["tsex"]=='0') 37 $row["tsex"]='男'; 38 else 39 $row["tsex"]='女'; 40 //判断是不是超级管理员 41 if($row["tsuper"]=='10') 42 $row["tsuper"]='超级老师管理员'; 43 else 44 $row["tsuper"]='普通老师管理员'; 45 46 //输出内容 47 echo " <tr> "; 48 echo '<td>'.$row["tid"].'</td>'; 49 echo '<td>'.$row["tname"].'</td>'; 50 echo '<td>'.$row["tage"].'</td>'; 51 echo '<td>'.$row["tsex"].'</td>'; 52 echo '<td>'.$row["tcount"].'</td>'; 53 echo '<td>******</td>';//隐藏的写法 54 echo '<td>'.$row["tsuper"].'</td>'; 55 echo " </tr> "; 56 } 57 echo "</table> "; 58 59 //释放SQL链接 60 mssql_free_result($result); 61 } 62 else 63 { 64 echo "没有权限查看!"; 65 } 66 }
老师查看资料
1 //GET传递信息,显示自己信息 2 if($_GET['people']=='me') 3 { 4 //cookie传输tid 5 $id=$_COOKIE["uid"]; 6 //SQL 语句 7 $query = "SELECT * FROM [V3].[dbo].[teacher] where tid=".$id.""; 8 $result = mssql_query($query); 9 /******************* 10 HTML表格输出 11 *******************/ 12 echo "<table border='1' > "; 13 //取得结果集中字段的数目 14 $db_t_num=mssql_num_fields($result); 15 //保存字段中文含义 16 $arrname[0]='编号'; 17 $arrname[1]='姓名'; 18 $arrname[2]='教学年龄'; 19 $arrname[3]='性别'; 20 $arrname[4]='登录帐号'; 21 $arrname[5]='登录密码'; 22 $arrname[6]='管理权限'; 23 24 echo " <tr> "; 25 for($num=0;$num<$db_t_num;$num++) 26 { 27 echo " <td>".$arrname[$num]."</td> "; 28 } 29 echo " </tr> "; 30 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 31 { 32 //判断之后显示男女中文 33 if($row["tsex"]=='0') 34 $row["tsex"]='男'; 35 else 36 $row["tsex"]='女'; 37 //判断是不是超级管理员 38 if($row["tsuper"]=='10') 39 $row["tsuper"]='超级老师管理员'; 40 else 41 $row["tsuper"]='普通老师管理员'; 42 43 //输出内容 44 echo " <tr> "; 45 echo '<td>'.$row["tid"].'</td>'; 46 echo '<td>'.$row["tname"].'</td>'; 47 echo '<td>'.$row["tage"].'</td>'; 48 echo '<td>'.$row["tsex"].'</td>'; 49 echo '<td>'.$row["tcount"].'</td>'; 50 echo '<td>******</td>';//隐藏的写法 51 echo '<td>'.$row["tsuper"].'</td>'; 52 echo " </tr> "; 53 } 54 echo "</table> "; 55 56 //释放SQL链接 57 mssql_free_result($result); 58 }
老师添加老师(权限限制)
1 //POST传递信息 2 if(isset($_POST['addsub'])) 3 { 4 //把传递的信息传到变量里面 5 $tname=$_POST['name']; 6 $tsex=$_POST['sex']; 7 $tage=$_POST['age']; 8 $tcount=$_POST['count']; 9 $tpwd=$_POST['pwd']; 10 $tpwd2=$_POST['pwd2']; 11 $tsuper=$_POST['super']; 12 $tidid=$_POST['idid']; 13 $age=$_POST['ageage']; 14 $tel=$_POST['tel']; 15 $address=$_POST['address']; 16 //判断两次密码是否相同 17 if($tpwd==$tpwd2) 18 { 19 sql(); 20 //SQL语句 21 $sql="select * from [V3].[dbo].[teacher]"; 22 $result = mssql_query($sql); 23 //从结果集中取得一行作为关联数组 24 while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) 25 { 26 //二次判断是否登录帐号重复 27 if($row['tcount']==$tcount) 28 { 29 //报错并终止 30 echo ("已经有人申请了这个帐号!"); 31 exit(); 32 } 33 } 34 //执行SQL语句插入 35 $sql_add="EXEC [V3].[dbo].[V3_teacher] ".$tidid.",'".$tname."', '".$tage."', '".$tsex."', '".$tcount."', '".$tpwd."', '".$tsuper."','".$age."','".$tel."','".$address."'"; 36 $result_add = mssql_query($sql_add); 37 if($result_add) 38 {echo "添加成功!";} 39 else 40 {echo "sql出错!";} 41 } 42 else 43 { 44 //报错并终止 45 echo ("两次密码不对"); 46 exit(); 47 } 48 }
老师删减老师(权限限制)
1 //POST传递信息 2 if(isset($_POST['delsub'])) 3 { 4 sql(); 5 $tid=$_POST['id']; 6 $sql="DELETE FROM [V3].[dbo].[teacher] where [tid]=".$tid.""; 7 $result = mssql_query($sql); 8 if($result) 9 {echo "删除成功";} 10 else 11 {echo "SQL出错!";} 12 }
老师添加课程
1 //POST传递信息 2 if(isset($_POST['addclass'])) 3 { 4 sql(); 5 //POST传递信息 6 $tid=$_POST['id']; 7 $cname=$_POST['name']; 8 //SQL语句插入 9 $sql="INSERT INTO [V3].[dbo].[class] ([sid], [tid], [cname],[score],[cid]) VALUES (0, ".$tid.", '".$cname."',999,".rand(1,999).")"; 10 $result = mssql_query($sql); 11 if($result) 12 {echo "创建课程成功";} 13 else 14 {echo "SQL出错!";} 15 }
老师查看选课情况
1 if($_GET['action']=='list') 2 { 3 //cookie传递tid 4 $id=$_COOKIE["uid"]; 5 sql(); 6 //SQL语句取得编号tid老师以及默认学生sid=0,得到课名cname和课号cid 7 $sql_class="SELECT * FROM [V3].[dbo].[class] where [tid]=".$id." AND [sid] = 0"; 8 $result_class = mssql_query($sql_class); 9 $i=0;//保存有多少行 10 while ($row = mssql_fetch_array($result_class, MSSQL_ASSOC)) 11 { 12 $class_id[$i]=$row['cid']; 13 $class_name[$i]=$row['cname']; 14 $i++; 15 } 16 //SQL语句通过tid和cid得到有多少学生选课 17 for($a=0;$a<$i;$a++) 18 { 19 $sql_num[$a]="SELECT * FROM [V3].[dbo].[class] where [tid]=".$id." AND [cid] = ".$class_id[$a].""; 20 $result_num[$a]= mssql_query($sql_num[$a]); 21 $class_num[$a]=mssql_num_rows($result_num[$a]); 22 } 23 //保存字段中文含义 24 $arrname[0]='课号'; 25 $arrname[1]='课名'; 26 $arrname[2]='选课人数'; 27 /******************* 28 HTML表格输出 29 *******************/ 30 echo "<table border='1' > "; 31 echo " <tr><td colspan='3' align='center'>老师号:".$id."</td></tr> "; 32 echo " <tr> "; 33 //有3列 34 for($num=0;$num<3;$num++) 35 { 36 echo " <td>".$arrname[$num]."</td> "; 37 } 38 echo " </tr> "; 39 for($a=0;$a<$i;$a++) 40 { 41 //删去sid为0的 42 $class_num[$a]=$class_num[$a]-1; 43 echo " <tr> "; 44 echo '<td>'.$class_id[$a].'</td>'; 45 echo '<td>'.$class_name[$a].'</td>'; 46 echo '<td>'.$class_num[$a].'</td>'; 47 echo " </tr> "; 48 } 49 echo "</table> "; 50 } 51 ?>
老师删减课程
1 //POST传递信息 2 if(isset($_POST['delclass'])) 3 { 4 sql(); 5 //POST传递信息 6 $cid=$_POST['cid']; 7 //SQL进行删减操作 8 $sql="DELETE FROM [V3].[dbo].[class] where [cid]=".$cid.""; 9 $result = mssql_query($sql); 10 if($result) 11 {echo "删除课程成功";} 12 else 13 {echo "SQL出错!";}
老师查看成绩
1 //GET传递信息 2 if($_GET['action']=='show') 3 { 4 sql(); 5 //cookie传输tid 6 $id=$_COOKIE["uid"]; 7 //SQL语句通过tid取得课号cid 8 $sql_t="SELECT * FROM [V3].[dbo].[class] where [sid]=0 AND [tid] = ".$id.""; 9 $result_t = mssql_query($sql_t); 10 $i=0;//保存老师有多少课程 11 while ($row = mssql_fetch_array($result_t, MSSQL_ASSOC)) 12 { 13 $t_cid[$i]=$row['cid']; 14 $t_cname[$i]=$row['cname']; 15 $i++; 16 } 17 //将cid,sid,score存入数组 18 for($a=0;$a<$i;$a++) 19 { 20 //通过cid找到选课了的学生 21 $sql_t_s="SELECT * FROM [V3].[dbo].[class] where [cid]=".$t_cid[$a]." AND [tid] = ".$id.""; 22 $result_t_s = mssql_query($sql_t_s); 23 $ii=0;//保存每个课程的学生人数 24 while($row_ready = mssql_fetch_array($result_t_s, MSSQL_ASSOC)) 25 { 26 $t_sid[$a][$ii]=$row_ready['sid']; 27 $t_score[$a][$ii]=$row_ready['score']; 28 $ii++; 29 } 30 $num[$a]=$ii;//把每个课程的人数存到数组里面 31 } 32 //通过sid找到sname 33 for($b=0;$b<$i;$b++) 34 { 35 for($c=0;$c<$num[$b];$c++) 36 { 37 //通过cid找到选课了的学生 38 $sql_sn="SELECT * FROM [V3].[dbo].[V3_student] where [sid]=".$t_sid[$b][$c].""; 39 $result_sn = mssql_query($sql_sn); 40 while($row_sn = mssql_fetch_array($result_sn, MSSQL_ASSOC)) 41 { 42 $t_sname[$b][$c]=$row_sn['sname']; 43 } 44 } 45 } 46 //列出老师的课程 47 if($_GET['cid']=='0') 48 { 49 for($dd=0;$dd<$i;$dd++) 50 { 51 echo "<a href='score.php?action=show&cid=".$t_cid[$dd]."'>查看__".$t_cname[$dd]."__课程情况!</a><br>"; 52 } 53 } 54 for($ddd=0;$ddd<$i;$ddd++) 55 { 56 if($_GET['cid']==$t_cid[$ddd]) 57 { 58 //保存字段中文含义 59 $arrname[0]='课号'; 60 $arrname[1]='课名'; 61 $arrname[2]='学生号'; 62 $arrname[3]='学生名'; 63 $arrname[4]='成绩'; 64 /******************* 65 HTML表格输出 66 *******************/ 67 echo "<table border='1' > "; 68 echo " <tr> "; 69 //5列 70 for($num5=0;$num5<5;$num5++) 71 { 72 echo " <td>".$arrname[$num5]."</td> "; 73 } 74 echo " </tr> "; 75 76 for($e=0;$e < $num[ $ddd ];$e++) 77 { 78 if($t_score[$ddd][$e]=="999") 79 { 80 $t_score[$ddd][$e]="未上传成绩"; 81 } 82 if($t_sid[$ddd][$e]=='0') 83 { 84 //不显示默认为0的学生 85 continue; 86 } 87 //输出内容 88 echo " <tr> "; 89 echo '<td>'.$t_cid[$ddd].'</td>'; 90 echo '<td>'.$t_cname[$ddd].'</td>'; 91 echo '<td>'.$t_sid[$ddd][$e].'</td>'; 92 echo '<td>'.$t_sname[$ddd][$e].'</td>'; 93 echo '<td>'.$t_score[$ddd][$e].'</td>'; 94 echo " </tr> "; 95 } 96 echo "</table> "; 97 } 98 } 99 }
老师上传成绩
1 if(isset($_POST['up'])) 2 { 3 sql(); 4 //cookie传输tid 5 $id=$_COOKIE["uid"]; 6 //POST传输得到cid 7 $up_cid=$_POST['cid']; 8 //通过cid和tid找到选课了的学生 9 $sql_s="SELECT * FROM [V3].[dbo].[class] where [cid]=".$up_cid." AND [tid] = ".$id.""; 10 $result_s = mssql_query($sql_s); 11 $i=0;//保存有多少学生 12 while ($row = mssql_fetch_array($result_s, MSSQL_ASSOC)) 13 { 14 $up_score[$i]=$row['score']; 15 $up_sid[$i]=$row['sid']; 16 $i++; 17 } 18 for($a=0;$a<$i;$a++) 19 { 20 if($up_sid[$a]=='0') 21 { 22 //忽略默认sid为0的学生 23 continue; 24 } 25 //判断是不是数字 26 if(is_numeric($_POST["sid_$up_sid[$a]"])) 27 { 28 //判断是否在0~100之内 29 if($_POST["sid_$up_sid[$a]"]<=100&&$_POST["sid_$up_sid[$a]"]>=0) 30 { 31 //POST传递给up_score数组 32 $up_score[$a]=$_POST["sid_$up_sid[$a]"]; 33 } 34 else 35 {echo "输入0~100之内的数字成绩!<br>";} 36 } 37 else 38 {echo "输入数字!<br>";} 39 //SQL语句更新score 40 $sql_up_score="UPDATE [V3].[dbo].[class] SET [score] = ".$up_score[$a]." WHERE [cid] =".$up_cid." AND [sid] =".$up_sid[$a].""; 41 $result_up_score = mssql_query($sql_up_score); 42 if($result_up_score) 43 {echo "上传成绩成功!";} 44 else 45 {echo "上传失败!";} 46 } 47 }
反省:代码不整洁,因为这是老师布置的一个作业,做的比较匆忙,只是解决了里面出现的一些error和warning,并没有对代码进行优化,还有对网站安全的处理,比如SQL注入等没有做出处理。
这些只是部分代码,希望大家看得过去。。。
转载请注明出处:http://www.cnblogs.com/yydcdut/p/3461254.html