关于PHP实现用户登录相关知识点(一)

不言
不言 原创
2023-03-24 22:36:01 1650浏览

这篇文章主要介绍了关于PHP实现用户登录相关知识点(一),有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

内容概要:
- 用户登录流程
- PHP实现验证操作
- PHP实现页面跳转
- PHP的操作数据库扩展
- 不同方法之间的优缺点
- PDO操作的优点
- session在PHP操作方法


# 1. 准备工作

1. 编写静态登录页面
2. 搭建运行环境
在httpd-vhosts.conf下配置一个基于域名的虚拟主机,
在本地DNS hosts文件中增加域名
3. 创建数据库、创建数据表、字段,测试内容
2. 登录流程图

3. 完善案例

  • 接收表单数据

  • 验证数据合法性

  • 验证数据合理性

  • 执行成功跳转


3.1 接收数据


get会将数据暴露到url参数中,而post是以一种私密的方式提交给服务器,所以对于一些安全度要求高的数据使用post方式提交

PHP接收表单的预定义变量

  • $_GET 用于接收以get方式提交的数据,包括url的形式

  • $_POST 用于接收以post方式提交的数据

  • $_REQUEST 可同时接收getpost提交的数据


3.2 验证数据合法性

此步骤判断数据是否为空,使用PHP的empty()判断


[PHP] 纯文本查看 复制代码



?

1


bool empty( mixed $var )


判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

3.3 验证数据合理性

判断表单提交的用户名密码是否和数据的用户名密码匹配,如果匹配,跳转到管理首页,只要有一个不匹配,则提示用户错误信息,并且跳转到首页

3.3.1 PHP连接数据库

首先mysql是一种cs架构的软件,所以对于PHP在连接数据库处于客户端的层面,对于PHP需要连接数据库,必须要开启对应的操作数据库扩展,在php.ini中找到对应的代码,去掉前面的分号重启apche即可,例如

  • mysql扩展 extension=php_mysql.dll

  • mysqli扩展 extension=php_mysqli.dll

  • PDO扩展 extension=php_pdo_mysql.dll


三者特点:

mysql:

1、最早的操作数据库API,操作简单容易上手 ,提供了一个面向过程的接口

2、但是从 PHP 5.5.0 起这个扩展已经被废弃,并且从 PHP 7.0.0. 开始被移除

mysqli:MySQL增强版扩展 过度版本

1、支持面向过程和面向对象

2、增加预处理语句,异常,事务捕获等

3、就是只支持mysql数据库。如果你要是不操作其他的数据库,这无疑是最好的选择

PDO:PHP Data Objects

1、支持预处理语句,异常捕获,事务等操作,仅支持面向对象,

2、只需要封装一个类,可以自由切换数据库到postgresql,或者sqlServer等数据库,而在程序端不用做太多的调整,其功能类似于JDBC、ODBC、DBI之类接口

3.3.2 使用mysql扩展连接数据库

  • 连接数据库mysql_connect("数据库地址","用户名","密码"); 返回一个连接资源

  • 设置字符集 mysql_query(sql指令)

    向数据库发送sql指令mysql_query("set names utf8");

  • 选择数据库mysql_query("use 数据库名");

  • 执行sql语句mysql_query("select|update|delete|insert语句");
    说明:如果为update|delete|insert执行成功返回true,失败返回false
    如果为select执行成功返回资源结果集,失败返回false

  • 5.资源结果集处理mysql_fetch_assoc($res);

相关推荐:

PHP实现微信网页登陆授权开发

以上就是关于PHP实现用户登录相关知识点(一)的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。