学会利用PHP编写数据库连接的公用功能,并操作数据库链接,实现数据的查询、增加和删除功能。

PHP逻辑代码和html代码分离。

2、 实验内容

php数据库项目PHP第十节课操作数据库2 Docker

PS:本实验要在PHP第十节课:数据库的创建(1)根本上编写的。

(1) 建立项目构造。

1. common目录:存放公用的函数;view目录:存放html代码;根目录存放php逻辑代码文件

2. 把之前实验01171015_stu.php、复制到相应的目录,新建学生信息列表的html和逻辑代码文件:01171015_list.html、01171015_list.php。

新建通用功能文件:01171015_function.php

新建初始化文件:01171015_init.php

初始化某些参数,比如设置字符集、载入函数库:01171015_function.php

新建操作处理文件:01171015_ opt.php

如下图说示:

(2) PHP编写数据库连接的公用功能

01171015_function.php,添加数据库连接公用函数。

01171015_function.php:

<?php/添加数据库连接公用函数删除、修正、增加数据的函数///重定向function redirect($url) {header(\"大众Location:$url\"大众);exit;}//连接数据库function db_connect() {static $link = null; //保存数据库连接$link = mysqli_connect('localhost', 'root', '', 'db_stusys') or exit('数据库链接失落败' . mysqli_connect_error());mysqli_set_charset($link, 'utf8');//设置字符集return $link;}//查询数据:链接数据库-实行SQL-取数据库集-处理结果集function db_query($sql) {$link = db_connect();//连接数据库$result = mysqli_query($link, $sql); //实行SQL语句,并获取结果集if (is_bool($result)) {exit('实行失落败。
缺点信息:' . mysqli_error($link));}return mysqli_fetch_all($result, MYSQLI_ASSOC);//处理结果集}//增编削记录function db_oper($sql) {$link = db_connect();//连接数据库return mysqli_query($link, $sql); //实行SQL语句}?>

删除、修正、增加数据的函数。
留待其他php文件调用。

(3) 01171015_init.php:设置字符集,载入函数库01171015_function.php。
往后所有的PHP文件均需包含此文件。

01171015_init.php:

<?php/1.设置字符集,载入函数库07110108_function.php2.往后所有的PHP文件均需包含此文件。
3.处理之后传给01171015_list.html进行显示///设置字符集header('content-type:text/html;charset=utf-8');//载入函数库require './common/01171015_function.php';?>

(4) 学生信息列表: 01171015_list.html 、01171015_list.php

1. 读取学生信息数据表,并展示数据表内容:

01171015_list.htmll:

<!DOCTYPE html PUBLIC \"大众-//W3C//DTD XHTML 1.0 Transitional//EN\公众 \"大众http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"大众><html xmlns=\"大众http://www.w3.org/1999/xhtml\"大众><head><meta http-equiv=\"大众Content-Type\"大众 content=\"大众text/html; charset=utf-8\公众 /><title>学生信息表</title><style type=\"大众text/css\公众>#fk{border:1;width:100%;font-size:25px;margin:25px;width:90%;};</style></head><!--1.新建学生信息列表的html2.里面可以直接输入要操作的数据库名称--><body><table width=\"大众500\公众 border=\公众1\"大众 align=\"大众center\"大众 id=\"大众fk\"大众><tr><p align=\公众center\"大众 id=\"大众fk\公众>学生列表</p><p align=\公众center\"大众 id=\公众fk\"大众><a href=\公众01171015_stu.php\公众>增加</a></p></tr><tr><td> 学号</td><td> 姓名</td><td> 班级</td><td> 性别</td><td> 爱好</td><td> 操作</td></tr><?php foreach ($stuinf as $v):?><tr><td> <?=$v['stu_id']?></td><td> <?=$v['stu_name']?></td><td> <?=$v['class_id']?></td><td> <?=$v['stu_gender']?></td><td> <?=$v['stu_hobby']?></td><td> <a href=\公众01171015_opt.php?id=<?=$v['stu_id']?>&opt=del\"大众>删除</a>|<a href=\公众01171015_stu1.php?stu_id=<?=$v['stu_id']?> &stu_name=<?=$v['stu_name'] ?> &stu_password=<?=$v['stu_password'] ?> &stu_role=<?=$v['stu_role'] ?> &stu_phone=<?=$v['stu_phone'] ?>\"大众>修正</a></td></tr><?php endforeach;?></table></body></html>

01171015_list.php:函数调用、逻辑处理

1. 然后我们直接运行01171015_init.php 然后就可以直接看到效果了,我们先从数据库读取数据显示在页面上。