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 相关文章推荐
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
php快速url重写更新版[需php 5.30以上]
Apr 25 PHP
解析php下载远程图片函数 可伪造来路
Jun 25 PHP
解析php中如何直接执行SHELL
Jun 28 PHP
php调用Google translate_tts api实现代码
Aug 07 PHP
php在数组中查找指定值的方法
Mar 17 PHP
详解WordPress中过滤链接与过滤SQL语句的方法
Dec 18 PHP
编写PHP程序检查字符串中的中文字符个数的实例分享
Mar 17 PHP
Yii2 rbac权限控制之rule教程详解
Jun 23 PHP
Yii2框架可逆加密简单实现方法
Aug 25 PHP
PHP使用Nginx实现反向代理
Sep 20 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
Sep 16 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正则匹配汉字的方法介绍
2013/04/25 PHP
修改apache配置文件去除thinkphp url中的index.php
2014/01/17 PHP
php生成随机颜色的方法
2014/11/13 PHP
php中bind_param()函数用法分析
2017/03/28 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
常见的原始JS选择器使用方法总结
2014/04/09 Javascript
jquery浏览器滚动加载技术实现方案
2014/06/03 Javascript
javascript实现2016新年版日历
2016/01/25 Javascript
jQuery使用contains过滤器实现精确匹配方法详解
2016/02/25 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
2016/10/17 Javascript
微信小程序实现签到功能
2018/10/31 Javascript
浅析Vue中拆分视图层代码的5点建议
2019/08/15 Javascript
WEB前端性能优化的7大手段详解
2020/02/04 Javascript
VUE使用 wx-open-launch-app 组件开发微信打开APP功能
2020/08/11 Javascript
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
Python安装第三方库的3种方法
2015/06/21 Python
利用Python抓取行政区划码的方法
2016/11/28 Python
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
python高级特性和高阶函数及使用详解
2018/10/17 Python
基于python指定包的安装路径方法
2018/10/27 Python
利用Python实现原创工具的Logo与Help
2018/12/03 Python
使用python获取(宜宾市地震信息)地震信息
2019/06/20 Python
python函数声明和调用定义及原理详解
2019/12/02 Python
Python爬虫简单运用爬取代理IP的实现
2020/12/01 Python
python 调用Google翻译接口的方法
2020/12/09 Python
iHerb中文官网:维生素、保健品和健康产品
2018/11/01 全球购物
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
NET程序员上机面试题
2015/05/23 面试题
通信工程专业女生个人求职信
2013/09/21 职场文书
面料业务员岗位职责
2013/12/26 职场文书
预备党员综合考察材料
2014/05/31 职场文书
三月学雷锋活动总结
2014/06/26 职场文书
先进单位申报材料
2014/12/25 职场文书
优秀志愿者感言
2015/08/01 职场文书
Mysql 用户权限管理实现
2021/05/25 MySQL
python3中apply函数和lambda函数的使用详解
2022/02/28 Python