PHP基础(三)

十四、PHP访问MYSQL数据库

(一)、mysql库的分类

1、mysql库:PHP5.5.0起开始废弃,7.0.0就开始移除,操作系数简单;

2、mysqli库:安全性能比mysql要强,操作难度系数要高;

3、pdo库 :安全性能比mysql要强,操作难度系数要高;

(二)、PHP连接mysql数据库的一些函数

1、 mysql_connect打开一个到 MySQL 服务器的连接;

2、mysql_select_db 选择 MySQL 数据库;

3、mysql_query发送一条SQL语句;

4、mysql_fetch_assoc 从结果集中取得一行作为关联数组;

5、mysql_fetch_row 从结果集中取得一行作为数组,数字型;

6、mysql_fetch_array 从结果集中取得一行作为关联|数字数组;

7、mysql_fetch_object — 从结果集中取得一行作为对象;

8、mysql_free_result释放结果;

9、mysql_close — 关闭 MySQL 连接内存;

10、mysql_error 输出mysql操作错识;

错误处理原则:开发阶段可以报,上线【生产环境】不允午报错;

处理方式一: error_reporting() 设置错识报告级别 ;

处理方式二: @;

如何防止错误:

define("DENUG",false);

if(DENUG){

error_reporting(E_ALL);//报告所有错误

}else{

error_reporting(0);//不报告所有错误

}

(三)、连接数据库的步骤

第一步:mysql_connect(ip地址(localhost)、账号(root)、密码(root)):与mysql服务器建立连接;

第二步:mysql_select_db(数据库):选择你要连接的数据库;

第三步:mysql_query(set names utf8)告诉数据库服务器以utf8的编码输出;

第四步:mysql_query(mysql语句)发送一条mysql语句返回的结果集;

mysql语句:如果sql语句是select 成功返回结果是资源,失败为false;

如果sql语句是insert delete update 成功返回true,失败为false;

第五步: 从结果集提取数据

mysql_fetch_assoc()从结果集中取得一行作为关联数组;

mysql_fetch_row()从结果集中取得一行作为数值数组;

mysql_fetch_array()从结果集中取得一行作为(关联 | 数值)数组;

(四)如何做增删改及分页的思路

1、增加表格的内容

首先建立一个与数据库表格字段一样的表单

先判断empty($_GET/$_POST)是否有数据,然后通过$_GET/$_POST 任意一种方法获取表单所添加的数据;

最后连接数据库,把获取的数据添加到数据库里,利用数据库的insert 语句添加;

2、删除表格的内容

首先利用$_GET方法拿到表格每行的id

判断empty($_GET/$_POST【‘id’】) id是否拿到

最后连接数据库,利用数据库的delete语句删除;

3、修改表格的内容

首先建立一个与数据库表格字段一样的表单

首先利用$_GET方法拿到表格每行的id

判断empty($_GET/$_POST【‘id’】) id是否拿到

连接数据库,利用数据库的select语句进行查询,并提取出来

提取出来的数据传到新建的表单中,用value接收,这样表单中就会有数据库表格里的内容

判断empty($_GET/$_POST) 表单中是否有数据,然后连接数据库,利用$_GET/$_POST 任意一种方法获取表单中所修改的内容,修改利用数据库的update语句进行修改;

3、分页思路

求总记录数、显示条数 、页数

第一步、通过查询语句查询数据库的表格中所有的行数,返回的是结果集

第二步、利用函数提取查询的结果集,返回的是一个关联数组或数值数组,或者两者都有

第三步、把总行数赋给一个变量

第四步、定义所要求每页的条数

第五步、通过总行数和条数之商,并通过向上取整函数ceil()得出表格的总页数;

在页面中输出页码

可以利用for循环输出页码数

可以利用首页,上一页,下一页,尾页输出页码

根据页码拿每页的数据 select * from 表 limit (x-1)*显示条数,显示条数 x代表页码

$dangqian=empty($_GET['page'])?1:$_GET['page'];//当前页

$getkey=($dangqian-1)*$show;//

$getData=mysql_query("select * from student limit {$getkey},{$show}");//返回一个结果集

十五、cookie与session

(一)、HTTP协议是无状态协议:

1、 Cookie

概念:是由web服务器保存在客户机的小文本文件

特点:cookie是由服务器下达setcookie指令在客户端产生的小文本文件

以后的每次请求都会通过http请求头把cookie传给后面请求页面

作用:让http协议的记忆状态

使用:

Setcookie(名称,值,有效时间) 生成

$_COOKIE[名称] 取cookie

Setcookie(名称,值,过去的时间) 删除

应用: 购物车 免登录

2、Session

概念:是什么:是一个存储在服务端的小文本文件

作用:让http协义有记忆状态

使用:

第一步、Session_start() 开启session 判断有没有cookie过来,如果没用过来,生成两个文件 一个cookie 一个session 生成

$_SESSION[名称] = 值 存数据

第二步、Session_start()

echo $_SESSION[名称] 或 $data = $_SESSION[名称] 取数据

第三步、Session_start()

Unset( $_SESSION[名称] ) 删除session文件里某一个数据

$_SESSION = array(); 删除session文件里所有数据

Session_destroy() 删除session文件

应用:购物车 后台登录:维持后台登录状态;

Cookie与session区别,session与cookie联系,cookie与session作用:

1 、cookie 与session都是一种存储机制

2 、cookie数据存在客户端,session的数据存服务端

3 、联系:session需要用cookie存储随机id号

4 、作用:多个页面之间维持会话状态

待续....

以上就是个人整理出来的PHP基础,供大家参考和学习。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190202G08GLX00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券