🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 第十六章 PHP 操作MySQL **学习要点:** 1.PHP 连接到MySQL 2.增删改查 3.其他常用函数 如果你已经具有了使用PHP、SQL 和MySQL 的丰富经验,现在就可以把所有这些技术 组合在一起。PHP 与MySQL 之间稳固的集成只是众多程序员采纳它的一个原因,还有一个 原因就是,它如此的简单方便。 **一.PHP连接到MySQL** 这里,我们全面采用UTF-8 编码。 设置Zend Stduio 的编码:Window -&gt; Preferences -&gt; Workspace 标头设置,让火狐和IE 保持编码统一: ``` <?php header('Content-Type:text/html; charset=utf-8'); ?> ``` 连接MySQL ``` <?php $conn = @mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die('数据库连接失败!错误信息:'.mysql_error()); ?> ``` 数据库连接参数,可以用常量存储,这样就不能修改,更加安全。 ``` <?php define('DB_USER','root'); define('DB_PASSWORD','yangfan'); define('DB_HOST','localhost'); define('DB_NAME' ,'school'); ?> ``` 选择你所需要的数据库 ``` <?php @mysql_select_db(DB_NAME) or die('数据库找不到!错误信息:'.mysql_error()); ?> ``` 设置字符集,如果是GBK,直接设置SET NAMES GBK 即可 ``` <?php @mysql_query('SET NAMES UTF8') or die('字符集设置错误'); ?> ``` 获取记录集 ``` <?php $query = "SELECT * FROM grade"; $result = @mysql_query($query) or die('SQL 语句有误!错误信息: '.mysql_error()); ?> ``` 输出一条记录 ``` <?php print_r(mysql_fetch_array($result,MYSQL_ASSOC)); ?> ``` 释放结果集资源 ``` <?php mysql_free_result($result); ?> ``` 关闭数据库 ``` <?php mysql_close($conn); ?> ``` **二.增删改查** 新增数据 ``` <?php $query = "INSERT INTO grade (name,email,point,regdate) VALUE ('李炎恢','yc60.com@gmail.com',,NOW())"; @mysql_query($query) or die('添加数据出错:'.mysql_error()); ?> ``` 修改数据 ``` <?php $query = "UPDATE grade SET name='小可爱' WHERE id=6"; @mysql_query($query) or die('修改出错:'.mysql_error()); ?> ``` 删除数据 ``` <?php $query = "DELETE FROM grade WHERE id=6"; @mysql_query($query) or die('删除错误:'.mysql_error()); ?> ``` 显示数据 ``` <?php $query = "SELECT id,name,email,point FROM grade"; $result = @mysql_query($query) or die('查询语句出错:'.mysql_error()); while (!!$row = mysql_fetch_array($result)) { echo $row['id'].'----'.$row['name'].'----'.$row['email'].'----'.$row['point']; echo '<br />'; } ?> ``` **三.其他常用函数** mysql_fetch_row():从结果集中取得一行作为枚举数组 mysql_fetch_assoc(): 从结果集中取得一行作为关联数组 mysql_fetch_array(): 从结果集中取得一行作为关联数组,或数字数组,或二者兼有 mysql_fetch_lengths (): 取得结果集中每个输出的长度 mysql_field_name(): 取得结果中指定字段的字段名 mysql_num_rows(): 取得结果集中行的数目 mysql_num_fields():取得结果集中字段的数目 mysql_get_client_info(): 取得MySQL 客户端信息 mysql_get_host_info(): 取得MySQL 主机信息 mysql_get_proto_info(): 取得MySQL 协议信息 mysql_get_server_info(): 取得MySQL 服务器信息  ** 注:文章出自李炎恢PHP视频教程,本文仅限交流使用,不得用于商业用途,否则后果自负。**