⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stu_register.php

📁 在实际教学应用中
💻 PHP
字号:
<?php  
	session_start();
	if(isset($_GET['action']) && $_GET['action']=="new") $_SESSION['step']=1;
?>
<html>
<head>
<title>EasyTeacher信息技术课堂教学助手(ItAssis)学生端-注册</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="et.css" rel="stylesheet" type="text/css">
<style type="text/css">body,td,th {font-size: 14px;}</style>
</head>

<body>
<?php
	include "config.inc.php";
	include "conn.inc.php";
	$db=Connect_db($CFG_DB_ADDRESS,$CFG_DB_PORT,$CFG_DB_NAME,$CFG_DB_OWNER,$CFG_DB_PWD);

	if(!$CFG_STU_REGISTE_AOLLOWED) {echo "<br><br><p align=center>目前不允许注册!</p>";exit;}

	echo "<br><p>注册步骤:";
	if($_SESSION['step']==1)
		echo "<span class=red>第1步→选择所在班级&nbsp;&nbsp;</span>";
	else
		echo "第1步→选择所在班级&nbsp;&nbsp;";		
	if($_SESSION['step']==2)
		echo "<span class=red>第2步→选择自己姓名&nbsp;&nbsp;</span>";
	else
		echo "第2步→选择自己姓名&nbsp;&nbsp;";	
	if($_SESSION['step']>=3)
		echo "<span class=red>第3步→设置密码&nbsp;&nbsp;</span></p>";
	else
		echo "第3步→重新设置密码&nbsp;&nbsp;</span></p>";	

	if($_SESSION['step']==1){//注册第1步
		echo "
		<div align=center><form method=post action=stu_register.php>
		<select name=grade_class size=10>"; 

		for($i=$CFG_USER_START_GRADE;$i<=$CFG_USER_END_GRADE;$i++)
			for($j=1;$j<=$CFG_USER_MAX_CLASS;$j++)
				echo "<option value=$i,$j>&nbsp;&nbsp;&nbsp;$i($j)班&nbsp;&nbsp;&nbsp;</option>";
		echo"</select><p><input type=submit value=下一步></form></div>";
		
		$_SESSION['step']=2;
	}else if($_SESSION['step']==2){//注册第2步
		if (!isset($_POST['grade_class'])){//注册第1步出错处理
			echo "
			<div align=center><span class=red>错误报告:</span>没有选择班级,请重新选择!
			<form method=post action=stu_register.php>
			<select name=grade_class size=10>"; 

			for($i=$CFG_USER_START_GRADE;$i<=$CFG_USER_END_GRADE;$i++)
				for($j=1;$j<=$CFG_USER_MAX_CLASS;$j++)
					echo "<option value=$i,$j>&nbsp;&nbsp;&nbsp;$i($j)班&nbsp;&nbsp;&nbsp;</option>";
			echo"</select><p><input type=submit value=下一步></form></div>";
			exit;
		}

		list($grade,$class)=split(",",$_POST['grade_class']);

		$sql="SELECT id,name FROM unregiester";
		$sql.=" WHERE state=\"Y\" and grade=$grade and class=$class";
		$sql.=" ORDER BY name";
		$result = mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());

		if (!$num=mysql_num_rows($result) )
			{echo "<div align=center>对不起,本班待注册名单无人。新来同学请让老师给你添加。";exit;}

		echo "<div align=center><form method=post action=stu_register.php>";
		echo "<select name=unreg_id size=10>";
		while($array=mysql_fetch_array($result))
			echo "<option value=".$array['id'].">&nbsp;&nbsp;&nbsp;".$array['name']. "&nbsp;&nbsp;&nbsp;</option><br>";
	  	echo "</select>";
		echo "<p><input type=submit name=step2 value=下一步></form></div>";

		$_SESSION['step']=3;
		$_SESSION['grade_class']=$_POST['grade_class'];		
	}else if($_SESSION['step']==3){//注册第3步
		if (!isset($_POST['unreg_id']) ){//注册第2步出错处理
			echo "<div align=center><span class=red>错误报告:</span>没有选择姓名!";

			list($grade,$class)=split(",",$_SESSION['grade_class']);
	
			$sql="SELECT id,name FROM unregiester";
			$sql.=" WHERE state=\"Y\" and grade=$grade and class=$class";
			$sql.=" ORDER BY name";
			$result = mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());

			if (!$num=mysql_num_rows($result) )
				{echo "<div align=center>对不起,本班待注册名单无人。新来同学请让老师给你添加。";exit;}

			echo "<div align=center><form method=post action=stu_register.php>";
			echo "<select name=unreg_id size=10>";
			while($array=mysql_fetch_array($result))
				echo "<option value=".$array['id'].">&nbsp;&nbsp;&nbsp;".$array['name']. "&nbsp;&nbsp;&nbsp;</option><br>";
			echo "</select>";
			echo "<p><input type=submit name=step2 value=下一步></form></div>";
			exit;
		}

		$sql="SELECT name FROM unregiester WHERE id=".$_POST['unreg_id'];
		$result = mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());
		$array=mysql_fetch_array($result);

		echo "
		<form method=post action=stu_register.php>
		<table width=100% border=0 align=center cellspacing=4 bgcolor=#FFFFFF>
		<tr bgcolor=#FFCC99><td width=82><div align=right>注册名:</div></td>	
		<td width=72>".$array['name']."</td>
		<td width=346><span class=red>注:</span>系统默认用你的中文名字作为注册名。</td>
		</tr>
		<tr bgcolor=#D6D3CE>
		<td><div align=right>设定密码:</div></td>
		<td><input name=pwd type=password id=pwd size=10 maxlength=10></td>
		<td><span class=red>注:</span>密码是4~10位的数字或字母的组合,不要太简单。如:123456</td>
		</tr>
		<tr bgcolor=#D6D3CE>
		<td><div align=right>确认一次:</div></td>
		<td><input name=pwd2 type=password id=pwd2 size=10 maxlength=10></td>
		<td><span class=red>注:</span>再次输入以保证你输入的密码不是误输入。</td>
		</tr>
		<tr><td colSpan=3><div align=center><input type=submit value=下一步></div></td></tr>
		</table>
		</form>";

		$_SESSION['step']=4;
		$_SESSION['unreg_id']=$_POST['unreg_id'];
		$_SESSION['unreg_name']=$array['name'];		
	}else if($_SESSION['step']==4){//注册第4步
		$err_msg='';
		if(!isset($_SESSION['unreg_id'])) 
			$err_msg.='<p>没有ID。';
		if(trim($_POST['pwd']==""))
			$err_msg.='<p>没有填写密码';
		if(trim($_POST['pwd'])!=trim($_POST['pwd2']))
			$err_msg.="<p>密码前后不一致!";
		if(preg_match("/[\W]/",trim($_POST['pwd']))==true)
			$err_msg.="<p>你的密码中包含不允许的字符,密码应该是4~10位的数字或字母的组合!";
		if(strlen($_POST['pwd'])<4 ||strlen($_POST['pwd'])>=10)
			$err_msg.="<p>密码长度不对,密码长度在4~10位间!";

		if($err_msg<>''){//注册第3步出错处理
			echo "<div align=center><span class=red>错误报告:</span>$err_msg</div>
			<form method=post action=stu_register.php>
			<table width=100% border=0 align=center cellspacing=4 bgcolor=#FFFFFF>
			<tr bgcolor=#FFCC99><td width=82><div align=right>注册名:</div></td>	
			<td width=72>".$_SESSION['unreg_name']."</td>
			<td width=346><span class=red>注:</span>系统默认用你的中文名字作为注册名。</td>
			</tr>
			<tr bgcolor=#D6D3CE>
			<td><div align=right>设定密码:</div></td>
			<td><input name=pwd type=password id=pwd size=10 maxlength=10></td>
			<td><span class=red>注:</span>密码是4~10位的数字或字母的组合,不要太简单。如:123456</td>
			</tr>
			<tr bgcolor=#D6D3CE>
			<td><div align=right>确认一次:</div></td>
			<td><input name=pwd2 type=password id=pwd2 size=10 maxlength=10></td>
			<td><span class=red>注:</span>再次输入以保证你输入的密码不是误输入。</td>
			</tr>
			<tr><td colSpan=3><div align=center><input type=submit value=下一步></div></td></tr>
			</table>
			</form>";
			exit;		
		}

		//在stu表中检查注册名是否有重复
		//若无重复则将向stu表中添加数据,同时删除unregiester表中的数据
        //有重复注册名则提示学生后缀一个区别名		
		$unreg_id=$_SESSION['unreg_id'];
		$reg_id=$_SESSION['unreg_name'];
		$pwd=$_POST['pwd'];
		if(isset($_POST['appendix']))//重名则在注册名后加后缀
			$reg_id.=$_POST['appendix'];

		$sql="SELECT sid FROM stu WHERE sid=\"$reg_id\"";
		$result = mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());

		if(mysql_num_rows($result)){//注册名重名处理
			echo "
			<div align=center>
			<p><span class=red>系统广播:</span>对不起,注册名<SPAN class=red>$reg_id</SPAN>已经被别人先用了。</p>
			<form method=post action=stu_register.php>
			<table width=100% border=0 align=center cellspacing=4 bgcolor=#FFFFFF>
			<tr bgcolor=#FFCC99><td width=82><div align=right>注册名:</div></td>	
			<td width=72>".$_SESSION['unreg_name']."<input type=text size=1 name=appendix></td>
			<td width=346><span class=red>建议:</span>名字后加一个数字或者字母,如1、2、a、b。</td>
			</tr>
			<tr bgcolor=#D6D3CE>
			<td><div align=right>设定密码:</div></td>
			<td><input name=pwd type=password id=pwd size=10 maxlength=10 value=$pwd></td>
			<td><span class=red>注:</span>密码是4~10位的数字或字母的组合,不要太简单。如:123456</td>
			</tr>
			<tr bgcolor=#D6D3CE>
			<td><div align=right>确认一次:</div></td>
			<td><input name=pwd2 type=password id=pwd2 size=10 maxlength=10 value=$pwd></td>
			<td><span class=red>注:</span>再次输入以保证你输入的密码不是误输入。</td>
			</tr>
			<tr><td colSpan=3><div align=center><input type=submit value=下一步></div></td></tr>
			</table>
			</form>";
			exit;
		}

		//从unregiester表中检索出学生数据
		$sql="SELECT id,name,grade,class FROM unregiester WHERE id=\"$unreg_id\"";
		$result=mysql_query($sql,$db) or die("错误报告:不能执行查询: <b>$sql</b><br>" . mysql_error());
		$array=mysql_fetch_array($result);

		$sname=$array['name'];
		$grade=$array['grade'];
		$class=$array['class'];
		$identity=2;//默认身份为学生

		//将学生插入stu表中
		$sql="INSERT INTO stu(sid,pwd,sname,grade,class,identity)";
		$sql.=" VALUES(\"$reg_id\",\"$pwd\",\"$sname\",$grade,$class,$identity)";
		mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());;

        //将学生从unregiester表中删除
        $sql="DELETE FROM unregiester WHERE id=".$_SESSION['unreg_id'];
		mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());

		echo "
		<div align=center><h1>恭喜<span class=red>$reg_id</span>注册成功。</h1>
		<p><span class=red>系统提示:</span>请牢记你的密码!为了你个人资料的安全千万不要将密码告诉他人!</p>
		<p>请关闭此窗口,然后在首页中<span class=red>用自己的姓名和密码</span>进入系统!</p></div>";

		session_destroy();
	}//注册第4步结束
	
?>		
<h3 align="center" class="red">注:注册只限于没有系统用户名的同学。已注册同学请在<span class="blue">首页登陆</span>。</h3>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -