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 array_search() 函数使用
Apr 13 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
Apr 23 PHP
php查询ip所在地的方法
Dec 05 PHP
php计划任务之ignore_user_abort函数实现方法
Jan 08 PHP
php正则匹配html中带class的div并选取其中内容的方法
Jan 13 PHP
PHP安全上传图片的方法
Mar 21 PHP
微信支付开发动态链接Native支付
Jul 12 PHP
php 5.4 全新的代码复用Trait详解
Jan 05 PHP
深入理解PHP的远程多会话调试
Sep 21 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 PHP
Thinkphp 框架扩展之应用模式实现方法分析
Apr 27 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/06/18 PHP
PHP与MYSQL中UTF8 中文排序示例代码
2014/10/23 PHP
对联广告js flash激活
2006/10/19 Javascript
优化javascript的执行速度
2010/01/23 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
基于jQuery创建鼠标悬停效果的方法
2015/03/07 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
2015/05/09 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
jQuery属性选择器用法示例
2016/09/09 Javascript
图片上传之FileAPI与NodeJs
2017/01/24 NodeJs
简单实现vue验证码60秒倒计时功能
2017/10/11 Javascript
vue中父子组件注意事项,传值及slot应用技巧
2018/05/09 Javascript
vue 设置路由的登录权限的方法
2018/07/03 Javascript
微信小程序时间轴实现方法示例
2019/01/14 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
五分钟搞懂Vuex实用知识(小结)
2019/08/12 Javascript
微信小程序 SOTER 生物认证DEMO 指纹识别功能
2019/12/13 Javascript
python中的对象拷贝示例 python引用传递
2014/01/23 Python
Python 字典(Dictionary)操作详解
2014/03/11 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
Python多线程获取返回值代码实例
2020/02/17 Python
Mysql数据库反向生成Django里面的models指令方式
2020/05/18 Python
python编写一个会算账的脚本的示例代码
2020/06/02 Python
基于python的opencv图像处理实现对斑马线的检测示例
2020/11/29 Python
python 根据列表批量下载网易云音乐的免费音乐
2020/12/03 Python
博柏利美国官方网站:Burberry美国
2020/11/19 全球购物
网络安全类面试题
2015/08/01 面试题
党员干部观看《周恩来四个昼夜》思想汇报
2014/09/10 职场文书
学习朴航瑛老师爱岗敬业先进事迹思想汇报
2014/09/17 职场文书
2014年班级工作总结范文
2014/12/23 职场文书
导游词300字
2015/02/13 职场文书
幼儿园语言教学反思
2016/02/23 职场文书
浅谈sql_@SelectProvider及使用注意说明
2021/08/04 Java/Android