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 相关文章推荐
模拟xcopy的函数
Oct 09 PHP
解决MySQL中文输出变成问号的问题
Jun 05 PHP
php下批量挂马和批量清马代码
Feb 27 PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
Jul 02 PHP
基于PHP Web开发MVC框架的Smarty使用说明
Apr 19 PHP
PHP多文件上传类实例
Mar 07 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
Apr 20 PHP
php传值赋值和传地址赋值用法实例分析
Jun 20 PHP
round robin权重轮循算法php实现代码
May 28 PHP
Yii2.0实现生成二维码功能实例
Oct 24 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
Jan 21 PHP
php和asp语法上的区别总结
May 12 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多进程编程实例详解
Jul 19 #PHP
PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】
Jul 19 #PHP
You might like
PHP写的获取各搜索蜘蛛爬行记录代码
2012/08/21 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
2013/11/26 PHP
php采用file_get_contents代替使用curl实例
2014/11/07 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
Yii框架常见缓存应用实例小结
2019/09/09 PHP
简洁短小的 JavaScript IE 浏览器判定代码
2010/03/21 Javascript
js修改地址栏URL参数解决url参数问题
2012/12/15 Javascript
JS/jQuery实现默认显示部分文字点击按钮显示全部内容
2013/05/13 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
Javascript遍历table中的元素示例代码
2014/07/08 Javascript
一个JavaScript处理textarea中的字符成每一行实例
2014/09/22 Javascript
js判断滚动条是否已到页面最底部或顶部实例
2014/11/20 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
全面了解js中的script标签
2016/07/04 Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
2016/12/14 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
深入理解vue路由的使用
2017/03/24 Javascript
微信小程序获取用户openId的实现方法
2017/05/23 Javascript
Vuex提升学习篇
2018/01/11 Javascript
详解javascript中的变量提升和函数提升
2018/05/24 Javascript
微信小程序BindTap快速连续点击目标页面跳转多次问题处理
2019/04/08 Javascript
微信小程序使用echarts获取数据并生成折线图
2019/10/16 Javascript
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
2014/06/04 Python
Python分支结构(switch)操作简介
2018/01/17 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
Python中函数参数调用方式分析
2018/08/09 Python
python爬虫搭配起Bilibili唧唧的流程分析
2020/12/01 Python
python实现跨年表白神器--你值得拥有
2021/01/04 Python
师范应届生语文教师求职信
2013/10/29 职场文书
电气自动化个人求职信范文
2014/02/03 职场文书
英文求职信写作小建议
2014/02/16 职场文书
如何写一份好的英文求职信
2014/03/19 职场文书
校长寄语大全
2014/04/09 职场文书
监守自盗观后感
2015/06/10 职场文书
使用redis生成唯一编号及原理示例详解
2021/09/15 Redis