1.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 2.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”); //跳转网页 以上是连接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<>”); 创建一个数据库(要有权限):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 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) 3.综合案例 企业网站的开发、制作基本分为前台和后台。 前台功能相对简单,就是读取数据(SELECT)。 前台功能相对复杂,方方面面都牵扯到了。 网站后台登录的一个流程图 网站后台的文件结构 include文件夹:公共功能的文件夹(核心文件) config.php 公共配置文件 conn.php 连接数据库的公共文件 functions.php 常用的函数定义文件 第一功能模块:先做登录模块 (1)文件列表: login.php 登录的静态页面 login_check.php 获取登录信息,与数据库进行比对 (2)数据表:007_admin Username:用户名 Password:密码,经过md5()函数加密码 Name:真实姓名 Tel:联系手机 Lastloginip:最后登录的客户端的IP地址 Lastlogintime:最后登录成功的时间 Loginhits:登录的总次数 Status:账号的状态,1为启用,0为禁用。 Addate:账号的创建时间 4.PHP全局数组 如何获取表单提交的数据?我们需要使用PHP全局数组来获取。
5.包含文件:将其它的文件代码包含(复制)进来 include(fileName)包含外部文件,如:include(“cofig.php”) require(fileName)包含外部文件,如:require(“config.php”) include()和require()的区别(面试题) 这两个函数除了在出错时处理方式不一样,其它方面都一样。 include()如果包含文件中存在错误代码,包含进来后,会输出一个“警告错误信息”,程序会继续向下运行。 Require()如果包含文件中存储错误代码,包含进来后,会输出一个“致命错误信息”,并终止程序继续向下运行。 6.URL编码函数 Urlencode():此字符串中除了 -_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的 urlencode(“非法用户”)的结果是“%E9%9D%9E%E6%B3%95%E7%94%A8%E6%88%B7” urldecode():对使用urlencode()编码后的字符进行解码。 md5()对字符进行加密,返回一个32位的字符串,单向加密。 7.mysql_num_row($result):取出返回的字录数 |
|