PHP 简单案例[2]

  • 本系列PHP 简单案例通过“问题-代码”的方式介绍各类方法,每篇设置2个PHP综合问题,并给出解决方案。

问题1

存有一个 s i 3. p h p \mathrm{si} 3 . \mathrm{php} si3.php 文件的简单PHP程序, 是对给定的学生数据库 db_student设计一个学生表tb_student 的操作页面, 如下图所示。要求实现课程成绩录入的功能, 输入学号后点击查询按钮可显示相应的姓名、专业, 输入 课程名称和成绩后, 点击“添加”按钮可以添加学生的课程成绩。

在这里插入图片描述

问题1代码

<html>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<head><title>成绩登录页面</title>
<style type="text/css">
<!--
.STYLE1 {font-size: 15px; font-family: "幼圆";}
-->
</style>
</head>
<body>
    <div align="center"><font face="幼圆" size="5" color="#008000">
					<b>课程成绩录入</b></font></div><br><br>
<form name="frm1" method="post">
<table width="300" align="center">
<tr><td width="120"><span class="STYLE1">根据学号查询:</span></td>
	<td><input name="SNumber" id="SNumber" type="text" size="10">	
		<input type="submit" name="select" class="STYLE1" value="查找"></td></tr>
</table>
</form>
<?php
$conn=mysql_connect("localhost","root","") or die("连接失败");	
mysql_select_db("db_student",$conn) or die("连接数据库失败");	
mysql_query("SET NAMES 'gb2312'");				
$SNumber=@$_POST['SNumber'];						
//**********found**********
$sql="select sno,sname,smajor from tb_student where sno='$SNumber'";
$result=mysql_query($sql);	
$row=@mysql_fetch_array($result);				
if(($SNumber!==NULL)&&(!$row))						
	echo "<script>alert('该学生信息不存在!')</script>";
?>
<form name="frm2" method="post">
<table bgcolor="#CCCCCC" width="300" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>	<td bgcolor="#CCCCCC" width="90"><span class="STYLE1">学号:</span></td>
	<td><input name="SNum" type="text" class="STYLE1" value="<?php echo $row['sno']; ?>">
		<input name="h_SNum" type="hidden" value="<?php echo $row['sno']; ?>"></td></tr>
<tr>	<td bgcolor="#CCCCCC" width="90"><span class="STYLE1">姓名:</span></td>
<!-- **********found********** -->
	<td><input name="SName" type="text" class="STYLE1" value="<?php echo $row['sname']; ?>"></td></tr>
<tr><td bgcolor="#CCCCCC"><div class="STYLE1">专业:</div></td>
	<td><input name="SMajor" type="text" class="STYLE1" 
				value="<?php echo $row['smajor']; ?>"></td></tr>	
<tr><td bgcolor="#CCCCCC"><span class="STYLE1">课程名:</span></td>
	<td><input name="CName" type="text" class="STYLE1" 
				value=""></td></tr>
<tr><td bgcolor="#CCCCCC"><span class="STYLE1">成绩:</span></td>
	<td><input name="KCGrade" type="text" class="STYLE1" 
				value=""></td></tr>
<tr><td  align="center" colspan="2" bgcolor="#CCCCCC">
	<input name="b" type="submit" value="添加" class="STYLE1">&nbsp;
	</td></tr>
</table>
</form>
</body>
</html>

<?php
$XH=@$_POST['SNum'];				
$h_XH=@$_POST['h_SNum'];		
$XM=@$_POST['SName'];			
$ZY=@$_POST['SMajor'];		
$KCM=@$_POST['CName'];				
$CJ=@$_POST['KCGrade'];			

//**********found**********
if(@$_POST["b"]=='添加')
{
        if(!$XH){									
	    echo "<script>alert('学号不能为空!');location.href='sj3.php';</script>";
            exit;
        }
	elseif(!$KCM){								
    	    echo "<script>alert('课程名不能为空!');location.href='sj3.php';</script>";
            exit;
        }
	elseif(!$CJ){								
    	    echo "<script>alert('成绩不能为空!');location.href='sj3.php';</script>"; 				
	    exit;
        }

	$s_sql="select sno,cname from tb_score where sno='$XH' and cname='$KCM'";	
	$s_result=mysql_query($s_sql);
	$s_row=@mysql_fetch_array($s_result);
        if(!$s_row){                								
//**********found**********		
	$insert_sql="insert into tb_score(sno,cname,grade) values($$XH,$KCM, $CJ)";
		$insert_result=mysql_query($insert_sql) or die('添加失败!');
//**********found**********		
	if(mysql_affected_rows($insert_result)!=0)
     	 	echo "<script>alert('添加成功!');</script>"; 
	}
}
?>

问题2

mysqltest数据库中有学生表 (student) 、系别表 (dept) : student: {sid, sname, score, deptno} (字段说明: 学号, 姓名, 成绩, 系别编号) dept: {deptno, deptname }(字段说明: 系别编号, 系名称) 编写一个sj3.php页面, 如下图所示:

在这里插入图片描述
存有一个si3.php文件的简单PHP程序, 显示出所有学生的相关信息 (具体内容如图所示), 以及结果序号。每个学生记录的末尾有一个执行该记录“删除”操作的超链接, 在点击删除链接时, 弹出图示确认删除对话 框, 在用户点击“确认"按钮后, 使用 Get方式, 对数据库中数据进行删除操作, 重新检索并返回现有学生的相关信息。

问题2代码

<?php
  $con=mysql_connect("localhost:3306","root","")
    or die("数据库服务器连接失败!<br>");
//**********found**********
  mysql_select_db("mysqltest", $con) or die( "数据库选择失败!<br>");
  if(isset($_GET['del']))
  {
    $sid=$_GET['del'];
    $delstudent='delete from student where sid='.$sid;
//**********found**********
    mysql_query($delstudent,$con);
  }
  $sql_student="SELECT sid,sname,score,deptname FROM student s,dept d where s.deptno=d.deptno";
  $result_student=mysql_query($sql_student,$con);
?>
<!-- **********found********** -->
<table border='1px'>
  <tr>
    <td>结果序号</td>
    <td>学号</td>
    <td>姓名</td>
    <td>成绩</td>
    <td>系别名称</td>
    <td>操作</td>
  </tr>
<?php
//**********found**********
  $counter=0;
  while($rows_student=mysql_fetch_array($result_student)){
  	$counter++;
?>
  <tr> 
    <td><?php echo $counter; ?></td>
    <td><?php echo $rows_student[0];?></td>
    <td><?php echo $rows_student[1];?></td>
    <td><?php echo $rows_student[2];?></td>
    <td><?php echo $rows_student[3];?></td>
    <td><a href='sj3.php?del=<?php echo $rows_student[0];?>' onclick='return confirm("确定要删除吗")'>删除</a></td>
  </tr>
<?php
  }
  mysql_close($con);
?>
</table>
<!-- **********found********** -->
<br/>所有学生的信息(共有 <?php echo  $counter ?>)<br/>
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高山莫衣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值