天津企业网站建站模板,民宿网站开发dfd图,网站外链工具,巩义自助建站优化一.PHP数据库的扩展分类 1.MySQL 扩展是针对 MySQL 4.1.3 或更早版本设计的#xff0c;是 PHP 与 MySQL数据库交互的早期扩展。由于其不支持 MySQL 数据库服务器的新特性#xff0c;且安全性差#xff0c;在项目开发中不建议使用#xff0c;可用 MySQLi 扩展代替。
2.MySQ… 一.PHP数据库的扩展分类 1.MySQL 扩展是针对 MySQL 4.1.3 或更早版本设计的是 PHP 与 MySQL数据库交互的早期扩展。由于其不支持 MySQL 数据库服务器的新特性且安全性差在项目开发中不建议使用可用 MySQLi 扩展代替。
2.MySQLi 扩展是 MySQL 扩展的增强版它不仅包含了所有 MySQL 扩展的功能函数还可以使用 MySQL 新版本中的高级特性。例如多语句执行和事务的支持预处理方式完全解决了 SQL 注入问题等。MySQLi 扩展只支持MySQL 数据库如果不考虑其他数据库该扩展是一个非常好的选择。
3.PDO 是 PHP Data Objects数据对象的简称它提供了一个统一的 API接口只要修改其中的 DSN (数据源)就可以实现PHP应用与不同类型数据库服务器之间的交互。 二.连接数据库。
1.通过MySQL类库操作数据库的步骤
建立到MySQL的连接-打开指定的数据库-设置默认客户端的字符集-执行SQL查询-释放字符集-关闭连接 三.执行SQL语句。 在完成数据库的连接后就可以通过 SQL 语句操作数据库了。在 MySQLi扩展中通常使用 mysqli_query() 函数发送 SQL 语句获取执行结果。函数的声明方式如下 $conn表示通过 mysqli_connect() 函数获取的数据库连接 $sql 表示 SQL 语句。当函数执行 SELECT、SHOW、DESCRIBE 或EXPLAIN 查询时返回值是查询结果集而对于其他查询成功返回 true失败返回 false。
使用 mysql_query()函数执行 SQL语句对数据的操作方式主要包括 5种方式 查询数据使用select 语句实现数据的查询功能。 显示数据使用select 语句显示数据的查询结果。 插入数据使用insert into 语句向数据库中插入数据。 更新数据使用update 语句更新数据库中的记录。 删除数据使用 delete语句删除数据库中的记录 四.处理结果集 1.当通过 mysqli_query() 函数执行 SQL 语句后返回的结果集并不能直接使用需要使用函数从结果集中获取信息保存为数组。MySQLi 扩展中常用的处理结果集的函数如表所示。 2.在表列举函数中mysqli_fetch_all() 和 mysqli_fetch_array() 的返回值支持关联数组和索引数组两种形式函数第 1 个参数表示结果集第 2 个参数是可选参数表示返回的数组形式其值有 MYSQLI_ASSOC、MYSQLI_NUM、MYSQLI_BOTH 三种常量分别表示关联数组、索引数组或两者皆有默认值为 MYSQLI_BOTH。
3.当需要一次查询出所有的记录时可以通过 mysqli_fetch_all() 函数来实现
$data mysqli_fetch_all($result, MYSQLI_ASSOC);
再通过var_dump($data);打印出来。 五.预处理语句。
1.什么是预处理。
MySQLi 扩展中有一种预处理语句的机制其原理是预先编译 SQL 语句的模板当执行时只传输有变化的数据。下图演示了预处理语句和传统方式的区别。 图中可以看出当 PHP 需要执行 SQL 时传统方式是将发送的数据和 SQL 写在一起这种方式每条 SQL 都需要经过分析、编译和优化的周期而预处理语句只需要编译一次用户提交的 SQL 模板在操作时发送相关数据即可完成更新操作这极大地提高了运行效率而且无需考虑数据中包含特殊字符如单引号导致的语法问题。
2.预处理相关函数。
a. mysqi_prepare()函数用于预处理一个待执行的 SQL 语句函数声明如下mysqli_stmt mysqli_prepare ( mysqli $link , string $query )参数 $link 表示数据库连接$query 表示 SQL 语句模板。当函数执行后成功返回预处理对象失败返回 false。
b. 在编写SQL语句模板时其语法是将数据部分使用“?”占位符代替。示例代码如下 PHP操作mysql数据库总结 一.开启Mysql数据库
1php可以通过MySql函数库来操作数据库
开启mysql扩展
编辑Php配置文件php.ini
extension_dirphp/ext文件路径
启动extensionmysqli选项 在php.ini文件内;二.PHP操作Mysql数据库的步骤
1.连接mysql数据库服务器
2.判断是否连接正确
3.选择数据库
4.设置字符集编码
5.准备并执行SQL语句
6.处理结果集
7.释放结果集资源关闭数据库三.具体操作mysql数据库
先要写头部header()汉字编码
如果数据库中有时间输出的话还要写时区类型
1.连接数据库
$connmysqli_connect(连接数据库的ip3306,mysql数据库的账号mysql数据库的密码)
2.判断是否连接成功
返回错误号
int mysql_errno([$link]); 中括号中的内容可以省略
如果为发生任何错误此函数会返回0
返回错误信息
string mysqli_connect_error();
排查mysql数据库的错误信息可以用or die(...错误号.mysql_errno(),错误信息.mysqli_connect_error())来进行连接;
3.选择数据库
bool mysql_select_db(数据库的名字[$link])
4.设置客户端汉字编码
bool mysql_set_charset(utf8,[$link])
5.执行SQL语句
mixed mysql_query(select(查看表内容)\show(tables查看数据库\
create tabel查看建表)\desc(查看表结构)\insert(添加记录)\
update(更新)\dalete(删除))四.处理资源结果集
1.获取结果集包含的记录数目
int mysql_num_rows($表里记录信息变量)
2.获取表里的内容以索引数组返回值
array mysql_fetch_row($表里的记录信息变量)
3.获取表里的内容以关联数组返回值
array mysql_fetch_assoc($表里的记录信息变量)
4.获取结果集中字段的数目
int mysql_num_fieds($result)
5.返回结果集中某行记录的某个字段值(默认为首字段)
mysql_result($result, int $row)
int值是从0开始的0 拿某个字段的值
$row写字段名五.处理非查询语句
1.获取插入时受影响行的行数
int mysql_affected_rows()
2.获取插入时最后插入记录的主键id
int mysql_insert_id()六.释放结果集资源
1.如果是执行的事查询SQL语句查询后必须要释放资源
bool mysql_free_result();
2.使用完数据库后要关闭数据库
bool mysql_close(); ?php
$username$_POST[usernm]; $password$_POST[passwd]; #接收来自login.php传递的passwd值赋值到$password上
$connmysqli_connect(localhost,root,root,login); #建立与数据库的连接
if (!$conn)
{
die(连接错误. mysqli_connect_error());
} #判断和数据库是否连接正确
$sqlselect * from laptop where user$username and password$password;
$resmysqli_query($conn,$sql); #连接执行sql语句
if (mysqli_fetch_array($res)!0) #将传参转化为数组判断用户输入的值是否和数据库指定的字段中的值是否相同相同即不为0不相同反之。
{
echo OK; #可以改成页面链接 如header(location:query.html);
}
else
{
echo NO;
}? PHP操作数据库
(1) 连接数据库 ?php$servername localhost;
$username root;
$password 123456;
$dbname dbali;$conn new mysqli($servername, $username, $password, $dbname); // 创建连接// 检测连接
if ($conn-connect_error)
{die(连接失败: . $conn-connect_error);
} $conn-set_charset(utf8); //查询前设置编码防止输出乱码echo 连接成功;
? PHP连接数据库MYSQL的八个步骤
1.链接MySQL数据库 mysqli_connect(); 2.判断链接是否成功3.设置字符集 mysqli_set_charset 4.选择数据库 mysqli_select_db 5.准备SQL语句 select update insert delete 6.执行SQL语句 在选择数据库中使用 mysql_query()函数执行 SQL语句对数据的操作方式主要包括 5种方式 查询数据使用select 语句实现数据的查询功能。 显示数据使用select 语句显示数据的查询结果。 插入数据使用insert into 语句向数据库中插入数据。 更新数据使用update 语句更新数据库中的记录。 删除数据使用 delete语句删除数据库中的记录 7.处理结果集 8.关闭数据库释放资源 ?php$conn mysqli_connect(localhost,root,root);if (!$conn) {die(连接失败: . $conn-connect_error); //exit(数据库连接失败);}mysqli_set_charset($conn,utf8);mysqli_select_db($conn,count);$sql select * from count;$obj mysqli_query($conn,$sql);$res mysqli_fetch_array($obj);var_dump($res);mysqli_close($conn);?
(2) 书写语句执行语句 ① 执行语句的代码$res $conn-query() ② 若执行的是增删改语句,$res的值为布尔值(insert, update, delete) ③ 若执行的是查询语句得到查询结果集(对象)(select) ④ 若是查询语句记得释放查询结果集避免资源浪费 ⑤ 关闭数据库