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命令、分析结果集以及关闭数据库。

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2015-11-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏散尽浮华

nginx应用总结(1)--基础认识和应用配置

在linux系统下使用nginx作为web应用服务,用来提升网站访问速度的经验已五年多了,今天在此对nginx的使用做一简单总结。 一、nginx服务简介 Ng...

3216
来自专栏腾讯IVWEB团队的专栏

利用 yeoman 构建项目 generator

yoeman 提出一个 yeoman 工作流的概念,通过脚手架工具,构建工具和包管理器的配合使用让开发者专注于业务的解决上而不是其他小事情。

1290
来自专栏Laoqi's Linux运维专列

Redis 分布式集群架构配置

1856
来自专栏Java架构沉思录

DNS是如何运行的

DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。

1001
来自专栏游戏杂谈

nginx的配置笔记

nginx中每一个host都会被包含在一个server{}中,在编写nginx规则时,它支持一些基本的正则。

473
来自专栏我是攻城师

谈谈如何优雅的关闭正在运行中的Spark Streaming的流程序

3565
来自专栏北京马哥教育

操作系统能否支持百万连接?

下面来分别对这几个问题进行分析. 1. 操作系统能否支持百万连接? 对于绝大部分 Linux 操作系统, 默认情况下确实不支持 C1000K! 因为操作系统包含...

3165
来自专栏文渊之博

NOSQL(一)--Redis

简介最近开始接触NoSQL,翻译过来就是 not only sql,非关系型数据库吧。其中主要有四大类NoSQL,今天我们介绍其中的一种键值对的NoSQL:Re...

1805
来自专栏企鹅号快讯

基于python3.5+的web框架sanic中文入门

sanic是一款用 python3.5+ 写的 web framework,用法和 flask 类似,特点是非常快。 Github 官网:https://git...

2287
来自专栏SDNLAB

OpenDaylight与Mininet应用实战之OpenFlow协议分析

1 实验目的 在实验平台上熟悉SDN原理操作,通过wireshark抓包工具可以直接看到控制器与OVS交换机的通信过程、分析OpenFlow(以下简写为OF)协...

33610

扫码关注云+社区