FavoriteLoading
0

我的PHP学习第二十二天之MySQL基础

MySQL客户端下,操作MySQL的步骤

第一步:连接到MySQL数据库服务器       mysql –uroot -root

第二步:选择要操作的数据库(当前数据库)   use db_name

第三步:设置字符集   set names gbk

第四步:执行SQL语句:增、删、改、查

增加:INSERT INTO table_name(title,author,addate) VALUES(‘标题’,’admin’,now())

删除:DELETE FROM table_name WHERE 条件表达式

修改:UPDATE table_name SET title=“新的标题” WHERE 条件表达式

查询:SELECT * FROM table_name WHERE条件 ORDER BY  LIMIT

 

PHP操作MySQL的步骤(MySQL的函数)

第一步:连接MySQL数据库服务器

mysql_connect()

含义:连接到MySQL数据库服务器

格式:resource mysql_connect(主机地址,用户名,用户密码)

返回值:如果连接成功返回资源标识符,如果连接失败,返回false

举例:$link = mysql_connect(“localhost”,”root”,”root”);

exit()

含义:输出信息后中断脚本继续向下运行

格式:void exit([$string])

说明:$string参数是可选的,如果没有参数,则直接中断;如果有参数,则先输出,再中断

举例:exit(“连接MySQL失败”);

header()

含义:通过header()函数,向浏览器客户端发送一些信息,如:字符集设置、网页跳转等。

格式:void header($string)

注意:header()函数前,不能有任何的输出,包括:空格、空行、以及任何的HTML代码。一般来说,header()函数应该写在第一行代码之前。

举例:

header(“content-type:text/html;charset=utf-8”);  //设置字符集

header(“location:http://www.sina.com.cn”);    //跳转网页

我的PHP学习第二十二天之MySQL基础

以上是连接MySQL失败的系统信息。一般情况下,不要将系统的出错信息暴露给“黑客”。解决的办法,可以将错误信息进行屏蔽。屏蔽用的符号是“@”符。

举例:$link = @mysql_connect("localhost","r9oot","root");

mysql_get_host_info()

含义:如果连通MySQL后,显示服务器的一些信息。

格式:mysql_get_host_info()

 

第二步:选择要操作的数据库

提示:一个中小型网站,只有一个数据库,不会太多。

mysql_select_db()

含义:选择当前做为操作的数据库。

格式:bool mysql_select_db(db_name[,$link])

参数:db_name就是要选择的数据库名称

$link是可选项,代表当前活动连接。如果$link省略,则以上一次连接MySQL成功时的那个连接(资源)为准。

举例:mysql_select_db(“saixinjituan”)

mysql_error()

含义:显示最近一次操作MySQL的出错信息。

格式:string  mysql_error()

 

第三步:设置MySQL返回的数据字符集

mysql_query(“set names utf8”)

提示:设置字符集,应在“选择数据库”之后,在其它的SQL语句执行之前。

 

第四步:执行SQL语句

mysql_query()

含义:执行SQL语句,包括任何合法的SQL语句。

格式:resource mysql_query(string  $sql[,$link])

参数:$sql是任何合法的SQL语句;$link是当前活动连接

举例:

查询前10条的新闻: $result = mysql_query(“select * from 007_news id<=10”);

创建一个数据库(要有权限):mysql_query(“CREATE DATABASE IF NOT EXISTS db_name”);

删除ID=10的记录:mysql_query(“DELETE FROM 007_news WHERE id=10”);

注意:mysql_query()对于select、describe、show返回资源标识符;对于其它的命令成功返回true,失败返回false

我的PHP学习第二十二天之MySQL基础

mysql_fetch_row()

含义:从结果集中取得一行,作为枚举数组返回。

格式:array mysql_fetch_row(结果集$result)

返回值:是一个枚举数组,可通过print_r()来打印。

mysql_fetch_array()

含义:从结果集中取得一行,作为混合数组返回

格式:array mysql_fetch_array($result)

mysql_fetch_assoc()

含义:从结果集中取得一行,作为关联数组返回

格式:array mysql_fetch_assoc($result)

 

综合案例

企业网站的开发、制作基本分为前台和后台。

前台功能相对简单,就是读取数据(SELECT)。

前台功能相对复杂,方方面面都牵扯到了。

网站后台登录的一个流程图

我的PHP学习第二十二天之MySQL基础

网站后台的文件结构

include文件夹:公共功能的文件夹(核心文件)

config.php  公共配置文件

conn.php   连接数据库的公共文件

functions.php  常用的函数定义文件

我的PHP学习第二十二天之MySQL基础

第一功能模块:先做登录模块

(1)文件列表:

login.php     登录的静态页面

login_check.php   获取登录信息,与数据库进行比对

(2)数据表:007_admin

我的PHP学习第二十二天之MySQL基础

Username:用户名

Password:密码,经过md5()函数加密码

Name:真实姓名

Tel:联系手机

Lastloginip:最后登录的客户端的IP地址

Lastlogintime:最后登录成功的时间

Loginhits:登录的总次数

Status:账号的状态,1为启用,0为禁用。

Addate:账号的创建时间

 

 

PHP全局数组

如何获取表单提交的数据?我们需要使用PHP全局数组来获取。

1
2
3
4
5
6
7
8
9
10
$_SERVER[ ]:获取服务器的一些相关信息
$_SERVER[“SERVER_NAME”],网站的域名
$_SERVER[“SERVER_ADDR”],服务的IP地址
$_SERVER[“REMOTE_ADDR”],客户端的IP地址
$_POST[ ]:获取method=post的表单提交的值
$username = $_POST[“username”];
$password = $_POST[“password”];
$_GET[ ]:获取 method=get 的表单提交的值
$username = $_GET[“username”];
$password = $_GET[“password”];

 

包含文件:将其它的文件代码包含(复制)进来

include(fileName)包含外部文件,如:include(“cofig.php”)

require(fileName)包含外部文件,如:require(“config.php”)

include()和require()的区别(面试题)

这两个函数除了在出错时处理方式不一样,其它方面都一样。

include()如果包含文件中存在错误代码,包含进来后,会输出一个“警告错误信息”,程序会继续向下运行。

Require()如果包含文件中存储错误代码,包含进来后,会输出一个“致命错误信息”,并终止程序继续向下运行。

 

URL编码函数

Urlencode():此字符串中除了 -_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的

urlencode(“非法用户”)的结果是“%E9%9D%9E%E6%B3%95%E7%94%A8%E6%88%B7”

urldecode():对使用urlencode()编码后的字符进行解码。

md5()对字符进行加密,返回一个32位的字符串,单向加密。

mysql_num_row($result):取出返回的字录数

欢迎分享本文,转载请保留出处!—重蔚自留地 站长邮箱:admin@cwhello.com