PHP與mysql資料庫實現網頁登入驗證代碼分享

來源:互聯網
上載者:User
本文主要為大家帶來一篇ubutu 16.04環境下,PHP與mysql資料庫,網頁登入驗證執行個體講解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望能協助到大家。

正好最近的網域名稱備案通過了,興起就突然想做一個網頁,雖然之前去備案網域名稱也是有這個目的。

問過幾個人,說用linux上用PHP搭建網站很簡單,就試著做了一個,這裡主要說一下登入驗證相關的部分;

首相準備幾個檔案,主要是index.php、conn.php、data.php以及login.php;

login.php 主要是登入過程中的資料對比部分;其中include ('conn.php')內容在下面有說。

<?phpif(!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資料庫連接相關的操作,分為資料庫連接,以及資料庫選擇部分(注意資料庫連接的傳回值取值,不要隨便起,後邊引用的時候是用得著的。)

<?phptry{$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)

<?phpsession_start();include_once('data.php');$handle = db_connect();if(!$handle){ echo 'Did not access to the database';}else{ echo'connect success';}?>

其中包含的data.php登入部分如下:

<p class="modal fade" tabindex="-1" role="dialog" id="login">   <p class="modal-dialog" role="document">    <p class="modal-content">     <p 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>     </p>     <p 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>       <p class="checkbox">        <label>        <input type="checkbox" value="remember-me"> ログイン狀態を保持       </label>       </p>       <button class="btn btn-lg btn-primary btn-block" type="submit" name="submit">ログイン</button>      </form>     </p>     <p class="modal-footer">      <button type="button" class="btn btn-default" data-dismiss="modal">クローズ</button>     </p>    </p>    <!-- /.modal-content -->   </p>   <!-- /.modal-dialog -->  </p>

基本關於登入驗證部分就是這些,主要是與資料庫的資料進行對比,一開始用的對稱式加密的方式,對加密的方式還沒有仔細去研究,後面有機會再仔細看一下就好。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.