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

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

问过几个人,说用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"> ログイン状態を保持
       </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数据库,网页登录验证实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • PHP 极验验证码实例讲解

    你能找到这篇文章,说明你对极验验证已经不是完全陌生的了,所有废话我就不多说了,直接开始表说如何使用它,不过在此之前呢,先粘贴几个你可能会用得到的网址: 官网:http://www.geetest.com/ 官方文档:http://www.geetest.com/install/sections/idx-basic-introduction.html github:https://github.com/GeeTeam/gt-php-sdk.git 如何使用: 首先要确认前端使用页面,比如登陆页面

  • php session应用实例 登录验证

    复制代码 代码如下: <html> <head> <title>Login</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body> <form name="form1" method="post" action=

  • PHP登录验证码的实现与使用方法

    本文实例讲述了PHP登录验证码的实现与使用方法.分享给大家供大家参考,具体如下: 1. 新建code.php验证码生成文件 在此之前必须打开php的GD库,修改php.ini文件的配置,取消extension=php_gd2.dll前面的分号.代码如下: <?php session_start(); //生成验证码图片 Header("Content-type: image/PNG"); $im = imagecreate(44,18); $back = ImageColorAl

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

    正好最近的域名备案通过了,兴起就突然想做一个网页,虽然之前去备案域名也是有这个目的. 问过几个人,说用linux上用PHP搭建网站很简单,就试着做了一个,这里主要说一下登录验证相关的部分: 首相准备几个文件,主要是index.php.conn.php.data.php以及login.php; login.php 主要是登录过程中的数据对比部分:其中include ('conn.php')内容在下面有说. <?php if(!isset($_POST['submit'])){ exit('logi

  • protobuf简单介绍和ubuntu 16.04环境下安装教程

    protobuf简单介绍 protobuf是谷歌的开源序列化协议框架,结构类似于XML,JSON这种,显著的特点是二进制的,效率高,主要用于通信协议和数据存储等方面,算是一种结构化数据的表示方法. protobuf的优点 大家都在用,起码'装逼'的都在用[咱要跟上时代] 别人说性能好,二进制格式[大项目不用这个,感觉丢人] 跨平台支持各种语言,前后兼容好强大[毕竟人家谷歌在用了] protobuf的缺点 二进制格式,一般人看不了 缺乏自我描述 xml是自我描述的,但是protobuf格式不是的,

  • Mac环境下php操作mysql数据库的方法分享

    Mac本地环境搭建 在Mac系统,我们可以使用MAMP Pro 软件来搭建本地服务器.安装好这款软件,网站的目录在 /Applications/MAMP/htdocs 文件夹里,只需将文件放入该文件夹中,就可以通过http://localhost:8888来访问了,或者通过点击如下红色下划线按钮来快速访问站点. mac系统下安装php,两行即可. brew tap josegonzalez/homebrew-php brew install php54 安装完后配置一下,你就可以使用phpsto

  • Ubuntu16.04环境下搭建FTP服务器的教程

    Ubuntu16.04搭建FTP服务器 安装ftp 安装ftp: sudo apt-get update sudo apt-get install vsftpd 检查ftp是否安装: vsftpd --version 更改配置文件 注意使用sudo命令获得root权限 打开配置文件: sudo vim /etc/vsftpd.conf 做如下更改: # Example config file /etc/vsftpd.conf # # The default compiled in setting

  • ubuntu系统下 python链接mysql数据库的方法

    进入root 权限下 apt-get install mysql-server apt-get install mysql-client 创建数据库 mysql -u root -p passward 链接数据库 create database basename use basename 如果数据库存在要进行改动可以直接使用 mysql -u root -p passward basename 创建表 create table latest_face( id int(11) not null a

  • linux下python3连接mysql数据库问题

    python语言的3.x完全不向前兼容,导致我们在python2.x中可以正常使用的库,到了python3就用不了了.比如说mysqldb 1.安装pymysql pymysql就是作为python3环境下mysqldb的替代物,进入命令行,使用pip安装pymysql pip install pymysql3 2.使用pymysql 在我们需要使用数据库的.py文件开头添加下面两行 import pymysql pymysql.install_as_MySQLdb() 第一行是引入pymysq

  • CentOS7环境下安装MySQL5.5数据库

    目录 1.检查当前系统是否安装过Mysql 2.没有安装过的话直接进行下一步 总结 1.检查当前系统是否安装过Mysql rpm -qa|grep -i mysql 如果出现了上方我截图的东西,则需要删除MySQL 1,删除相关应用 yum remove MySQL-client-5.5.40-1.linux2.6.x86_64 yum remove MySQL-server-5.5.40-1.linux2.6.x86_64 2.查看文件名中含有MySQL的文件 find / -name mys

  • webuploader在springMVC+jquery+Java开发环境下的大文件分片上传的实例代码

    注意: 1,webuploader上传组件会和jQuery自带的上传组件冲突,所以不要使用<form>标签中添加上传文件的属性; enctype="multipart/form-data" 2.并且屏蔽ApplicationContext-mvc.xml里面的拦截配置! <!-- 上传拦截,如最大上传值及最小上传值 --> <!--新增加的webuploader上传组件,必须要屏蔽这里的拦截机制 <bean id="multipartRes

  • MySQL数据库入门之多实例配置方法详解

    本文实例讲述了MySQL数据库入门之多实例配置方法.分享给大家供大家参考,具体如下: 前面介绍了相关的基础命令操作:MySQL数据库基础篇之入门基础命令 所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握. 1.什么是多实例 多实例就是一台服务器上开启多个不同的服务端口(默认3306),运行多个mysql的服务进程,这此服务进程通过不同的socket监听不同的服务端口来提供各在的服务,所有实例之间共同使用一套MYSQL的安装程序,但各自使用不同的配置文件.启

  • jQuery+Ajax+PHP+Mysql实现分页显示数据实例讲解

    本文使用jQuery,结合PHP和Mysql,通过实例讲解如何实现Ajax数据加载效果. HTML <div id="list"> <ul></ul> </div> <div id="pagecount"></div> 页面中,#list用来展示数据列表,包括本例要展示的商品图片和标题,#pagecount用来展示分页条,即本例中的上一页.下一页. 当然,别忘了,在head中预先载入jquery

随机推荐