MySQL真题实战03:查询学生课程成绩

MySQL-NCRE 飞快学 1024浏览

显示效果如下: 查看

文件名保存为 073.php

特别提醒: 服务器 120.26.110.124 不支持 ext/mysql方式,请使用 ext/mysqli 方式。

<?php
$conn=mysql_connect("localhost","root","") or die("连接失败");
// **********found**********
 ______________ ("xsxk", $conn) or die("连接数据库失败");
Mysql_query("SET NAMES 'gb2312'");
$XH="";
$KCM="";
?>
<html >
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<head><title>查询学生成绩</title>
<style type="text/css">
<!--
.STYLE1 {font-size: 18px; font-family: "黑体";}
-->
</style>
</head>
<body  bgcolor="D9DFAA">
	<div align="center"><font face="幼圆" size="5" color="#008000">
					<b>查询学生成绩</b></font></div><br><br>
<form name="frm1" method="post">
<table width="350" align="center">
<tr><td><span class="STYLE1">学号:</span></td>
	<td><input type="text" name="XH" size="10">	</td>
	<td><span class="STYLE1">课程名称:</span></td>
	<td><input type="text" name="KCM" size="10"></td>
	<td><input type="submit" name="select" value="查询"></td></tr>
</table>
</form>
<?php
// **********found**********
if(__________________)
{
	$XH=$_POST['XH'];
	$KCM=$_POST['KCM'];
	if(!$XH||!$KCM)
		echo "<script>alert('输入不正确!')</script>;";
	else
	{ 
// **********found**********
		$sql="select 成绩 from 选课 where _______________________________";
		$result= mysql_query($sql) ;
// **********found**********
		$row=_____________________;
		if(!$row)
			echo "<script>alert('无成绩记录!')</script>;";
	}
}
?>
<br><br>
<table width="600" align="center">
<tr><td><span class="STYLE1"><?php echo "学号:".$XH ?></span></td>
    <td><span class="STYLE1"><?php echo "课程名称:".$KCM ?></span></td>
    <td><span class="STYLE1">成绩:</span></td>
	<td><input type="text" name="CJ" value="<?php echo @$row[0] ;?>" 
    <size="10">
</tr>
</table>
</body>
</html>

练习的配套数据库 SQL文件如下:

--
-- 数据库: `ncre003-xsxk`
--
CREATE DATABASE `ncre003-xsxk` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE  `ncre003-xsxk`;
-- --------------------------------------------------------

--
-- 表的结构 `学生`
--

CREATE TABLE IF NOT EXISTS `学生` (
  `学号` char(10) NOT NULL,
  `姓名` varchar(10) DEFAULT NULL,
  `出生日期` date DEFAULT NULL,
  `学院名称` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`学号`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- 转存表中的数据 `学生`
--

INSERT INTO `学生` (`学号`, `姓名`, `出生日期`, `学院名称`) VALUES
('2010072101', '张三', NULL, '外语学院'),
('2010072102', '李四', NULL, '化工学院'),
('2010072103', '王五', NULL, '信息学院'),
('2010072104', '赵六', NULL, '信息学院'),
('2010072105', '赵英', NULL, '信息学院'),
('2010072106', '赵雄', NULL, '信息学院'),
('2010072107', '张小花', NULL, '外语学院'),
('2010072108', '张小英', NULL, '外语学院'),
('2010072109', '张小花', NULL, '外语学院'),
('2010072110', '张小杰', NULL, '外语学院'),
('2010072111', '李英雄', NULL, '化工学院'),
('2010072112', '李高英', NULL, '化工学院'),
('2010072113', '李高杰', NULL, '化工学院'),
('2010072114', '李高放', NULL, '化工学院'),
('2010072115', '李高学', NULL, '化工学院'),
('2010072151', '丁香一', NULL, '生工学院'),
('2010072152', '姚源一', NULL, '生工学院');

-- --------------------------------------------------------

--
-- 表的结构 `课程`
--

CREATE TABLE IF NOT EXISTS `课程` (
  `课程名称` varchar(20) NOT NULL,
  `课程学分` int(11) DEFAULT NULL,
  PRIMARY KEY (`课程名称`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- 转存表中的数据 `课程`
--

INSERT INTO `课程` (`课程名称`, `课程学分`) VALUES
('C语言程序设计', 2),
('编译原理', 5),
('操作系统', 4),
('高等数学', 4),
('普通物理', 2),
('普通物理实验', 1),
('软件工程', 3),
('数据结构', 4);

-- --------------------------------------------------------

--
-- 表的结构 `选课`
--

CREATE TABLE IF NOT EXISTS `选课` (
  `课程名称` varchar(20) NOT NULL DEFAULT '',
  `学号` char(10) NOT NULL DEFAULT '',
  `成绩` float DEFAULT NULL,
  PRIMARY KEY (`课程名称`,`学号`),
  KEY `学号` (`学号`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- 转存表中的数据 `选课`
--

INSERT INTO `选课` (`课程名称`, `学号`, `成绩`) VALUES
('C语言程序设计', '2010072111', 66),
('C语言程序设计', '2010072112', 76),
('C语言程序设计', '2010072113', 86),
('C语言程序设计', '2010072114', 56),
('C语言程序设计', '2010072115', 46),
('编译原理', '2010072102', 82),
('编译原理', '2010072104', 91),
('编译原理', '2010072106', 66),
('编译原理', '2010072108', 71),
('编译原理', '2010072110', 73),
('编译原理', '2010072115', 82),
('操作系统', '2010072101', 81),
('操作系统', '2010072104', 82),
('操作系统', '2010072107', 58),
('操作系统', '2010072110', 61),
('操作系统', '2010072113', 60),
('操作系统', '2010072115', 90),
('高等数学', '2010072106', 61),
('高等数学', '2010072107', 71),
('高等数学', '2010072108', 81),
('高等数学', '2010072109', 51),
('高等数学', '2010072110', 66),
('高等数学', '2010072111', 73),
('高等数学', '2010072112', 74),
('普通物理', '2010072101', 66),
('普通物理', '2010072102', 61),
('普通物理', '2010072103', 62),
('普通物理', '2010072104', 64),
('普通物理', '2010072105', 81),
('普通物理', '2010072106', 82),
('普通物理实验', '2010072101', 76),
('普通物理实验', '2010072102', 51),
('普通物理实验', '2010072103', 72),
('普通物理实验', '2010072104', 74),
('普通物理实验', '2010072105', 71),
('普通物理实验', '2010072106', 72),
('软件工程', '2010072101', 56),
('软件工程', '2010072103', 76),
('软件工程', '2010072105', 86),
('软件工程', '2010072107', 51),
('软件工程', '2010072109', 81),
('软件工程', '2010072111', 83);

--
-- 限制导出的表
--

--
-- 限制表 `选课`
--
ALTER TABLE `选课`
  ADD CONSTRAINT `@9009@8bfe_ibfk_1` 
    FOREIGN KEY (`课程名称`) REFERENCES `课程` (`课程名称`),
  ADD CONSTRAINT `@9009@8bfe_ibfk_2` 
    FOREIGN KEY (`学号`) REFERENCES `学生` (`学号`);