PHP对数据库的相关操作

HTML5学堂:在使用PHP将数据库中的数据提取到前端网页当中,分为几个基本步骤,主要包括:定义数据库的基本信息、连接数据库、选择数据库、执行SQL命令、分析结果集、关闭数据库。本篇文章即从第一步开始,逐步的讲解PHP对数据库的基本操作。

核心知识 – PHP对数据操作的基本步骤

1、定义数据库的基本信息

2、请求“连接主机(服务器)”

3、选择数据库

4、执行SQL命令

5、分析结果集

6、关闭数据库

最核心的知识,其实依旧是知识的逻辑,而非具体的知识点,知识的逻辑可以认为是一个骨架,而具体的知识点是血肉,只有有了骨架,血肉才不是一坨“烂泥”。

简要的解释一下这几个步骤吧:一个网站当中,前端开发工程师/HTML5开发工程师处理的是网页的结构,规划出网页的格局,确定整体的样式风格。而展示在网站上的具体内容是来自于后台的数据库。这两种就如同两座独立的岛屿,那么用什么来连接这两座岛屿呢?如何将“数据岛”上的“资源”运送到展示给用户的“前端岛”呢?这个时候,后台语言就要发挥其作用了~

无论PHP、JAVA还是ASP.NET,任何一个后台语言的作用都是类似的,它们是用于连接前端和数据库的“桥梁”。

那么如果我们希望能够取到数据,自然要先确定到哪里选取数据,然后请求进行主机(服务器)的连接(毕竟数据在主机上),之后,则选择相应的数据库,接下来,告诉想要进行的操作是什么,数据库执行操作之后,必然会有一个结果,将结果返回出来之后,需要进行相关的数据处理(处理成前端可用的状态),之后用完了,就关闭数据库呗~

定义数据库的基本信息,请求连接主机

第一步与第二步:连接主机,我们需要三个必不可少的信息,就是主机(服务器)地址、用户名、密码。在定义之前通常我们都先进行定义。

定义数据库信息

PHP中定义常量的基本命令:define(constant_name, constant_val);

基本实现:

<?php
define('PATH', $_SERVER['DOCUMENT_ROOT']);    // HTML5学堂注释:定义文件路径
define('MYSQL_HOST', 'localhost'); // HTML5学堂注释:主机
define('MYSQL_USER', 'root'); // HTML5学堂注释:用户名
define('MYSQL_PASSWORD', ''); // HTML5学堂注释:密码
?>

相关说明:我在此处使用的是wamp构建的服务器集成环境,在phpMYadmin当中,是可以查看具体的用户名和密码的。如果是真实的服务器,第一个localhost更换为主机的url地址,用户名和密码分别替换为登录服务器的用户名和密码即可。

请求连接主机

进行数据库的连接:使用mysql_connect();命令,命令基本格式:mysql_connect(‘hostname’, ‘username’, ‘password’);

在定义了基本信息之后,我们此处就直接使用常量名即可,代码如下:

  1. $conn = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD);

相关提示:此处需要注意的是,对于字符串,一定要使用引号将其包含。关于常量命名的规范与推荐,可查看——>《PHP入门 – 常量的基本规则》

设置编码格式并选择数据库

如同CSS、JS一样,为了保证前后台数据的正常显示,因此也需要指定PHP的编码格式。具体代码如下:

  1. mysql_query(“set names ‘utf8′”);

在指定编码格式之后,进行数据库的选择。假设我此处需要选择名为student的数据库,代码如下:

  1. mysql_select_db(‘student’, $conn);

今天我们就先将讲解前三个步骤,整理一下我们的代码。代码如下:

<?php
define('PATH', $_SERVER['DOCUMENT_ROOT']);    // 定义文件路径
define('MYSQL_HOST', 'localhost'); // 主机
define('MYSQL_USER', 'root'); // 用户名
define('MYSQL_PASSWORD', ''); // 密码


// 进行数据库的连接
$conn = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD);
// 设置编码
mysql_query("set names 'utf8'");
mysql_select_db('student', $conn);
?>

在之后的文章中,我们再继续为大家讲解后面的几个步骤——执行SQL命令、分析结果集以及关闭数据库。

Related Post

发表回复