ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解


Posted in PHP onJuly 20, 2017

正好最近的域名备案通过了,兴起就突然想做一个网页,虽然之前去备案域名也是有这个目的。

问过几个人,说用linux上用PHP搭建网站很简单,就试着做了一个,这里主要说一下登录验证相关的部分;

首相准备几个文件,主要是index.php、conn.php、data.php以及login.php;

login.php 主要是登录过程中的数据对比部分;其中include ('conn.php')内容在下面有说。

<?php
if(!isset($_POST['submit'])){
 exit('login in error.');
}
$username = htmlspecialchars($_POST['username']);
$password = MD5($_POST['password']);
include('conn.php');
echo"$password";
$check_query = mysqli_query($result,"select USERID from USERINFO where EMAIL='$username' and PASSWORD='$password' limit 1");
if($ret = mysqli_fetch_array($check_query)){

 echo'connect true.';
}
else
{
 echo'connect false';
}
?>

另外要注意的是:关于$_POST针对的是form中的method =“post”中的内容。

因为里面用到MD5加密的方式,所以说一下,在后台数据库加密的时候也需要用到MD5加密的方式update数据,具体方式如下:

UPDATE USERINFO SET PASSWORD = md5('root') WHERE USERID = 1000;

其中的表格以及具体查询位置根据个人数据库而定。

conn.php 主要是跟mysql数据库连接相关的操作,分为数据库连接,以及数据库选择部分(注意数据库连接的返回值取值,不要随便起,后边引用的时候是用得着的。)

<?php
try{
$result = mysqli_connect('localhost','root','root');
mysqli_select_db($result,'WEBDATAS');
}catch(Exception $e)
{
 echo $e->message;
 exit;
}
if(!$result)
{
 return false;
}
echo "ok\n";
?>

剩下的主要是index.php 该文件是主页相关了,我只把登录相关的部分拿出来说明一下(这里用到的是boostrap中的模板,有兴趣的可以百度一下boostrap)

<?php
session_start();
include_once('data.php');

$handle = db_connect();
if(!$handle){
 echo 'Did not access to the database';
}else{
 echo'connect success';
}
?>

其中包含的data.php登录部分如下:

<div class="modal fade" tabindex="-1" role="dialog" id="login">
   <div class="modal-dialog" role="document">
    <div class="modal-content">
     <div class="modal-header">
      <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
      <h3 class="modal-title">ログイン</h3>
     </div>
     <div class="modal-body">
      <form class="form-signin" action="login.php" method = "post">
       <h4 class="form-signin-heading">利用者名 パスワ?ド 入力</h4>
       <label for="inputEmail" class="sr-only">利用者名</label>
       <input type="email" name="username" id="inputEmail" class="form-control" placeholder="利用者名を入力" required autofocus>
       <label for="inputPassword" class="sr-only">パスワ?ド</label>
       <input type="password" name="password" id="inputPassword" class="form-control" placeholder="パスワ?ド" required>
       <div class="checkbox">
        <label>
        <input type="checkbox" value="remember-me"> ログイン状?Bを保持
       </label>
       </div>
       <button class="btn btn-lg btn-primary btn-block" type="submit" name="submit">ログイン</button>
      </form>
     </div>
     <div class="modal-footer">
      <button type="button" class="btn btn-default" data-dismiss="modal">クロ?ズ</button>
     </div>
    </div>
    <!-- /.modal-content -->
   </div>
   <!-- /.modal-dialog -->
  </div>

基本关于登录验证部分就是这些,主要是与数据库的数据进行对比,一开始用的对称加密的方式,对加密的方式还没有仔细去研究,后面有机会再仔细看一下就好。

以上这篇ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
不用iconv库的gb2312与utf-8的互换函数
Oct 09 PHP
COM in PHP (winows only)
Oct 09 PHP
一个数据采集类
Feb 14 PHP
PHP下几种删除目录的方法总结
Aug 19 PHP
PHP 时间转换Unix时间戳代码
Jan 22 PHP
php中实现记住密码自动登录的代码
Mar 02 PHP
比较时间段一与时间段二是否有交集的php函数
May 31 PHP
PHP添加图片水印、压缩、剪切的封装类
Aug 17 PHP
windows下apache搭建php开发环境
Aug 27 PHP
PHP数据库连接mysql与mysqli对比分析
Jan 04 PHP
Zend Framework教程之资源(Resources)用法实例详解
Mar 14 PHP
PHP读取CSV大文件导入数据库的实例
Jul 24 PHP
thinkphp3.2实现在线留言提交验证码功能
Jul 19 #PHP
ThinkPHP框架表单验证操作方法
Jul 19 #PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 #PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 #PHP
php实现的pdo公共类定义与用法示例
Jul 19 #PHP
PHP实现的Redis多库选择功能单例类
Jul 27 #PHP
PHP策略模式定义与用法示例
Jul 27 #PHP
You might like
php的curl实现get和post的代码
2008/08/23 PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
2013/07/03 PHP
详解Laravel5.6 Passport实现Api接口认证
2018/07/27 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
2013/03/27 Javascript
js string 转 int 注意的问题小结
2013/08/15 Javascript
js获取指定日期周数以及星期几的小例子
2014/06/27 Javascript
Node.js中的缓冲与流模块详细介绍
2015/02/11 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
jQuery过滤选择器经典应用
2016/08/18 Javascript
JavaScript手风琴页面制作
2017/05/17 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
2019/04/02 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
浅谈Vue.set实际上是什么
2019/10/17 Javascript
[51:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/30 DOTA
mysql 之通过配置文件链接数据库
2017/08/12 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
Python实现插入排序和选择排序的方法
2019/05/12 Python
python实现截取屏幕保存文件,删除N天前截图的例子
2019/08/27 Python
Python 根据数据模板创建shapefile的实现
2019/11/26 Python
pandas中read_csv的缺失值处理方式
2019/12/19 Python
Python 中如何使用 virtualenv 管理虚拟环境
2021/01/21 Python
澳大利亚宠物商店:Petbarn
2017/11/18 全球购物
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
英语文学专业学生的自我评价
2013/10/31 职场文书
探矿工程师自荐信
2014/01/24 职场文书
结婚喜宴主持词
2014/03/14 职场文书
故宫英文导游词
2015/01/31 职场文书
城管个人总结
2015/02/28 职场文书
2015年青年教师工作总结
2015/05/25 职场文书
廉洁自律心得体会2016
2016/01/13 职场文书
2016年精神文明建设先进个人事迹材料
2016/02/29 职场文书
市直属机关2016年主题党日活动总结
2016/04/05 职场文书
QT与javascript交互数据的实现
2021/05/26 Javascript