两个文件夹,一个班级cls,一个学生stu。

两个表,一个班级cls,一个学生stu。

每个文件夹里有7个php文件:主界面stu.php-------增add.php,insert.php-------删delete.php-------改edit.php,update.php-------数据库sql.php

学生主界面cls.php

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>学生信息</title>
</head>
<body>
<center>
<h1>学生信息|<a href="add.php">添加学生</a></h1>
<table width="600px" border="1px">
<tr>
<th>id</th>
<th>姓名</th>
<th>班级</th>
<th>cid</th>
<th>修改</th>
<th>删除</th>
</tr>
<?php
include'sql.php';
$sql = "select * from stu";
$rst = mysql_query($sql);
while ($row=mysql_fetch_assoc($rst)) {
echo "<tr>";
echo "<td>$row[id]</td>";
echo "<td>$row[name]</td>";
echo "<td>$row[classname]</td>";
echo "<td>$row[cid]</td>";
echo "<td><a href='edit.php?id={$row[id]}&name={$row[name]}&classname={$row[classname]}&cid={$row[cid]}'>修改</a></td>";
echo "<td><a href='delete.php?id={$row[id]}'>删除</a></td>";
echo "</tr>";
}
mysql_close(); ?>
</table>
</center>
</body>
</html>

增add.php

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>添加学生</title>
</head>
<body>
<form action="insert.php" method="get">
<center>
<table>
<h1>添加学生</h1>
<tr>
<td>姓名</td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>班级</td>
<td>
<select name="classname" id="">
<?php
include'sql.php';
$sql = "select * from cls";
$rst = mysql_query($sql);
while ($row=mysql_fetch_assoc($rst)) {
echo "<option value='{$row[name]}'>{$row[name]}</option>";
}
mysql_close();
?>
</select>
</td>
</tr>
<tr>
<td><input type="submit" value="提交"></td>
</tr>
</table>
</center>
</form>
</body>
</html>

增insert.php

 <?php
include'sql.php';
$name = $_GET['name'];
$classname = $_GET['classname'];
$sql1 = "SELECT id FROM cls WHERE name='{$classname}'";
$rst1 = mysql_query($sql1);
$row = mysql_fetch_array($rst1);
$sql = "INSERT INTO stu(name,cid,classname) VALUES('{$name}','{$row[id]}','{$classname}')";
mysql_query($sql);
echo "<script>alert('添加成功')</script>";
echo "<script>location='stu.php'</script>"; ?>

删delete.php

 <?php
$id = $_GET['id'];
include'sql.php';
$sql = "DELETE FROM stu WHERE id={$id}";
mysql_query($sql);
echo "$sql";
echo "<script>location='stu.php'</script>"; ?>

改edit.php

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>修改学生</title>
</head>
<body>
<?php
$id = $_GET['id'];
$name = $_GET['name'];
$classname = $_GET['classname'];
$cid = $_GET['cid']; ?>
<form action="update.php" method="get">
<table border="1px">
<input type="hidden" name='id' value="<?php echo "$id"; ?>">
<input type="hidden" name='cid' value="<?php echo "$cid"; ?>">
<tr>
<td>
姓名修改为
</td>
<td>
<input type="text" name="newname" value="<?php echo "{$name}"; ?>">
</td>
</tr>
<tr>
<td>班级修改为</td>
<td align='center'>
<select name="newclassname" id="">
<?php
include'sql.php';
$sql = "select * from cls";
$rst = mysql_query($sql);
while ($row=mysql_fetch_assoc($rst)) {
if ($row[name]==$classname) {
echo "<option value='{$row[name]}' selected='selected'>{$row[name]}</option>";
}else{
echo "<option value='{$row[name]}'>{$row[name]}</option>";
}
}
mysql_close();
?>
</select>
</td>
</tr>
<tr>
<td><input type="submit" value="提交"></td>
</tr>
</table>
</form>
</body>
</html>

改update.php

 <?php
include'sql.php';
$newname = $_GET['newname'];
$newclassname = $_GET['newclassname'];
$id = $_GET['id'];
// $cid = $_GET['cid'];
$sql1 = "SELECT id FROM cls WHERE name='{$newclassname}'";
$rst = mysql_query($sql1);
$row = mysql_fetch_array($rst);
$sql = "UPDATE stu SET name='{$newname}',classname='{$newclassname}',cid='{$row[id]}' WHERE id={$id}";
mysql_query($sql);
mysql_close();
echo "<script>alert('修改成功! ');location='stu.php'</script>";
?>

数据库sql.php

 <?php
mysql_connect('localhost','root','123');
mysql_select_db(myclass);
?>

PHP学习笔记(14)班级和学生管理---学生的更多相关文章

  1. 【转】 C#学习笔记14——Trace、Debug和TraceSource的使用以及日志设计

    [转] C#学习笔记14——Trace.Debug和TraceSource的使用以及日志设计 Trace.Debug和TraceSource的使用以及日志设计   .NET Framework 命名空 ...

  2. Ext.Net学习笔记14:Ext.Net GridPanel Grouping用法

    Ext.Net学习笔记14:Ext.Net GridPanel Grouping用法 Ext.Net GridPanel可以进行Group操作,例如: 如何启用Grouping功能呢?只需要在Grid ...

  3. SQL反模式学习笔记14 关于Null值的使用

    目标:辨别并使用Null值 反模式:将Null值作为普通的值,反之亦然 1.在表达式中使用Null: Null值与空字符串是不一样的,Null值参与任何的加.减.乘.除等其他运算,结果都是Null: ...

  4. golang学习笔记14 golang substring 截取字符串

    golang学习笔记14 golang substring 截取字符串golang 没有java那样的substring函数,但支持直接根据 index 截取字符串mystr := "hel ...

  5. mybatis学习笔记(14)-查询缓存之中的一个级缓存

    mybatis学习笔记(14)-查询缓存之中的一个级缓存 标签: mybatis mybatis学习笔记14-查询缓存之中的一个级缓存 查询缓存 一级缓存 一级缓存工作原理 一级缓存測试 一级缓存应用 ...

  6. Python3+Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )

    !/usr/bin/env python -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )'''from selenium im ...

  7. 并发编程学习笔记(14)----ThreadPoolExecutor(线程池)的使用及原理

    1. 概述 1.1 什么是线程池 与jdbc连接池类似,在创建线程池或销毁线程时,会消耗大量的系统资源,因此在java中提出了线程池的概念,预先创建好固定数量的线程,当有任务需要线程去执行时,不用再去 ...

  8. [C++学习笔记14]动态创建对象(定义静态方法实现在map查找具体类名对应的创建函数,并返回函数指针,map真是一个万能类)good

    [C++学习笔记14]动态创建对象   C#/Java中的反射机制 动态获取类型信息(方法与属性) 动态创建对象 动态调用对象的方法 动态操作对象的属性 前提:需要给每个类添加元数据 动态创建对象 实 ...

  9. blfs(systemv版本)学习笔记-编译安装ligtdm显示管理器

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! ligtdm带有显示管理器和登录器,参照我的笔记安装xorg和i3后安装lightdm,就可以组成一个简易的桌面环境了 下面是l ...

随机推荐

  1. [转]MSSQL多列取最大或者最小值

    本文转自:http://blog.csdn.net/wufeng4552/article/details/4681510 /* lvl1 lvl2 lvl3 lvl4 lvl 4 3 4 1 3 2 ...

  2. 用 Chrome 扩展实现修改

      用 Chrome 扩展实现修改 ajax 请求的响应 wincss 4 个月前 背景 Fiddler 和 Charles 是常见的 HTTP 调试器,它们会在本地运行一个代理服务器,可以查看浏览器 ...

  3. netmap 编译

    参考博客:http://www.cnblogs.com/ruo-yu/p/5083290.html 我用的内核版本是4.4.39 step 1:编译内核. step 2:根据参考博客并没有成功编译出我 ...

  4. Node.js mm131图片批量下载爬虫1.00 iconv协助转码

    //====================================================== // mm131图片批量下载爬虫1.00 // 2017年11月15日 //===== ...

  5. sonatype Nexus3 install on Kubernetes

    Nexus 搭建代码 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: nexus3 labels: app: nexus ...

  6. Oracle一些查询的习题,初学者一定要练习,蛮不错的

    1. select * from emp; 2. select empno, ename, job from emp; 3. select empno 编号, ename 姓名, job 工作 fro ...

  7. 解决Cocos2d-x编译错误: 无法打开 源 文件 "extensions/ExtensionExport.h"

    #include "base/ccMacros.h"

  8. EXCEL在使用中,jar导入问题

    报错:The type org.apache.poi.ss.usermodel.Workbook cannot be resolved. It is indirectly referenced fro ...

  9. 算法笔记_080:蓝桥杯练习 队列操作(Java)

    目录 1 问题描述 2 解决方案 1 问题描述 问题描述 队列操作题.根据输入的操作命令,操作队列(1)入队.(2)出队并输出.(3)计算队中元素个数并输出. 输入格式 第一行一个数字N. 下面N行, ...

  10. win64 QT(VS2013) 配置 CGAL+libQGLViewer

    网上讲的都不是太全 我来说说把~ 首先感谢这位大神: chenwk891:http://blog.csdn.net/chenwk891/article/details/42171495#reply 还 ...