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 相关文章推荐
学习使用PHP数组
Oct 09 PHP
与数据库连接
Oct 09 PHP
php自动跳转中英文页面
Jul 29 PHP
PHP strstr 函数判断字符串是否否存在的实例代码
Sep 28 PHP
php opendir()列出目录下所有文件的实例代码
Oct 02 PHP
Zend Framework上传文件重命名的实现方法
Nov 25 PHP
PHP搭建大文件切割分块上传功能示例
Jan 04 PHP
PHP多进程编程实例详解
Jul 19 PHP
php实现的后台表格分页功能示例
Oct 23 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
Nov 17 PHP
PHP实现可精确验证身份证号码的工具类示例
May 31 PHP
在Laravel的Model层做数据缓存的实现
Sep 26 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
Smarty模板引擎缓存机制详解
2016/05/23 PHP
PHP7扩展开发之hello word实现方法详解
2018/01/15 PHP
详解php用static方法的原因
2018/09/12 PHP
实例讲解php实现多线程
2019/01/27 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
2020/07/10 PHP
IE JS无提示关闭窗口不提示的方法
2010/04/29 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
js实现浏览器倒计时跳转页面效果
2016/08/12 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
2016/12/07 Javascript
使用Bootstrap打造特色进度条效果
2017/05/02 Javascript
Vue.js学习笔记之常用模板语法详解
2017/07/25 Javascript
JS获取子、父、兄节点方法小结
2017/08/14 Javascript
vuex进阶知识点巩固
2018/05/20 Javascript
[01:10]DOTA2英雄背景故事第四期之混沌法则混沌骑士
2020/07/16 DOTA
Python获取脚本所在目录的正确方法
2014/04/15 Python
python计算auc指标实例
2017/07/13 Python
django中静态文件配置static的方法
2018/05/20 Python
python爬虫之urllib3的使用示例
2018/07/09 Python
Django框架使用内置方法实现登录功能详解
2019/06/12 Python
python向字符串中添加元素的实例方法
2019/06/28 Python
关于Pytorch MaxUnpool2d中size操作方式
2020/01/03 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
pyecharts动态轨迹图的实现示例
2020/04/17 Python
使用python将微信image下.dat文件解密为.png的方法
2020/11/30 Python
CSS3 Media Queries(响应式布局可以让你定制不同的分辨率和设备)
2013/06/06 HTML / CSS
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
naturalizer加拿大官网:美国娜然女鞋
2017/04/04 全球购物
迪卡侬波兰体育用品商店:Decathlon波兰
2020/03/31 全球购物
Python如何实现单例模式
2016/06/03 面试题
大唐面试试题(CPU,UNIX等等)
2012/01/11 面试题
创业计划书怎样才能打动风投
2014/01/01 职场文书
会计演讲稿范文
2014/05/23 职场文书
户籍证明模板
2014/09/28 职场文书
2015年汽车销售工作总结
2015/04/07 职场文书
Python使用psutil库对系统数据进行采集监控的方法
2021/08/23 Python