• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種用戶注冊登錄系統(tǒng)設(shè)計與實現(xiàn)

      2017-01-21 15:29:00陳義中
      軟件導刊 2016年12期
      關(guān)鍵詞:系統(tǒng)設(shè)計

      摘 要:隨著網(wǎng)站規(guī)模日益龐大,網(wǎng)站安全態(tài)勢日益嚴峻,目前許多網(wǎng)站或系統(tǒng)已將注冊登錄系統(tǒng)列為其安全保障的重要組成部分,成為不可缺少的重要功能之一。闡述了一種基于PHP+MYSQL的用戶注冊登錄系統(tǒng)的設(shè)計構(gòu)思,以及該系統(tǒng)各項功能的實現(xiàn)方法。

      關(guān)鍵詞:PHP;MYSQL;系統(tǒng)設(shè)計;網(wǎng)站安全

      DOIDOI:10.11907/rjdk.162041

      中圖分類號:TP319

      文獻標識碼:A文章編號:1672-7800(2016)012-0089-03

      0 引言

      網(wǎng)站規(guī)模發(fā)展迅猛,截至2015年12月底,中國網(wǎng)站總量達到426.7萬余個[1],但與此同時,網(wǎng)站安全態(tài)勢更加嚴峻。2015年被植入后門的中國網(wǎng)站數(shù)量為75028個[2]。目前,注冊與登錄系統(tǒng)已經(jīng)成為越來越多的網(wǎng)站或系統(tǒng)安全保障的重要組成部分,普遍都加載了用戶注冊登錄系統(tǒng),需要用戶進行注冊并登錄后,才能有權(quán)限使用網(wǎng)站或系統(tǒng)的有關(guān)功能,如OA系統(tǒng)、淘寶、京東等?;诖?,本文基于PHP+MYSQL設(shè)計了一種用戶注冊登錄系統(tǒng),闡述了該系統(tǒng)的設(shè)計構(gòu)思,以及各項功能的實現(xiàn)方法。

      1 系統(tǒng)設(shè)計

      1.1 用戶注冊

      在用戶注冊部分,可以分成兩種情況:一種情況是注冊成功,另一種情況是注冊失?。ㄒ驗樽杂脩裘呀?jīng)被注冊占用)。用戶注冊登錄流程如圖1所示。

      1.2 用戶登錄

      在用戶登錄部分,也可以分成兩種情況:一種情況是登錄成功,另一種情況登錄失敗(可能注冊還沒有通過管理員審核、用戶名錯誤、密碼錯誤)。在登錄判斷處理時,只需判斷是否登錄成功,登錄成功,則直接進入主頁;登錄失敗,則重新跳回登錄頁面。

      1.3 數(shù)據(jù)庫

      數(shù)據(jù)庫存儲著所有信息,是網(wǎng)站的核心,對網(wǎng)站的運營與建設(shè)起到關(guān)鍵性作用[3]。本文設(shè)計的用戶注冊登錄系統(tǒng)只需要建立一個用戶注冊信息表(user)。用戶的注冊與登錄都要使用user表,通過用戶輸入的用戶名及密碼在數(shù)據(jù)庫表中查找比對,最后返回比對結(jié)果,以此判斷注冊或登錄是否成功。

      2 系統(tǒng)實現(xiàn)

      2.1 站點建立

      建立站點Home,并在Home下建立數(shù)據(jù)庫Test,其余文件都存放在站點根目錄下。需要創(chuàng)建的主要文件如圖2。

      2.2 數(shù)據(jù)庫和表的建立

      sql在已有數(shù)據(jù)庫里創(chuàng)建user表,有id、username、password 3個字段。代碼如下:

      create table user(id int(10) not null auto_increment,username varchar(30),password varchar(40),primary key(id));

      2.3 數(shù)據(jù)庫連接

      使“前臺、后臺”工作流暢,安全穩(wěn)定,數(shù)據(jù)庫的連接操作是非常重要的環(huán)節(jié)[4]。新建一個頁面存放連接數(shù)據(jù)庫的語句,保存并命名為connect.php 。代碼如下:

      <?php

      $server="localhost";//主機

      $db_username="";//你的數(shù)據(jù)庫用戶名

      $db_password="";//你的數(shù)據(jù)庫密碼

      $con = mysql_connect($server,$db_username,$db_password);//鏈接數(shù)據(jù)庫

      if(!$con){

      die("can't connect".mysql_error());//如果鏈接失敗輸出錯誤

      }

      mysql_select_db('test',$con);//選擇數(shù)據(jù)庫(我的是test)

      ?>

      2.4 用戶注冊

      2.4.1 注冊頁面

      新建用戶注冊頁面signup.html 。注冊頁面可供用戶填寫的表單有注冊用戶名、注冊密碼和確認密碼、提交。

      代碼如下:

      <!doctype html>

      用戶注冊頁面

      用戶名:

      密 碼:

      2.4.2 注冊判斷處理

      新建注冊判斷處理頁面signup.php 。當用戶名不存在時,可以注冊,如當用戶名已經(jīng)存在,則注冊失敗。只有當表單中用戶名、密碼不為空時,表單才能提交到注冊處理頁面,否則不提交。核心代碼如下:

      <?php

      header("Content-Type: text/html; charset=utf8");

      if(!isset($_POST['submit'])){

      exit("錯誤執(zhí)行");

      }//判斷是否有submit操作

      $name=$_POST['name'];//post獲取表單里的name

      $password=$_POST['password'];//post獲取表單里的password

      include('connect.php');//鏈接數(shù)據(jù)庫

      $q="insert into user(id,username,password) values (null,'$name','$password')";//向數(shù)據(jù)庫插入表單傳來的值的sql

      $reslut=mysql_query($q,$con);//執(zhí)行sql

      if (!$reslut){

      die('Error: ' . mysql_error());//如果sql執(zhí)行失敗輸出錯誤

      }else{

      echo "注冊成功";//成功輸出注冊成功

      }

      mysql_close($con);//關(guān)閉數(shù)據(jù)庫

      ?>

      2.5 主頁

      新建主頁面welcome.php。

      2.6 用戶登錄

      2.6.1 登錄頁面

      新建一個登錄頁面login.html,當用戶點擊確認提交表單,只有當表單中用戶名及密碼不為空時,表單才能提交到登錄判斷處理頁面。如果用戶沒有注冊,可以轉(zhuǎn)到注冊頁面進行注冊。頁面部分代碼如下:

      <!doctype html>

      登陸

      用戶名

      密 碼

      2.6.2 登錄處理

      新建用戶登錄處理頁面login.php ,用戶登錄成功的情況下,頁面跳轉(zhuǎn)到welcom.html頁面;如果登錄失敗,則跳回登錄界面重試。核心代碼如下:

      <?PHP

      header("Content-Type: text/html; charset=utf8");

      if(!isset($_POST["submit"])){

      exit("錯誤執(zhí)行");

      }//檢測是否有submit操作

      include('connect.php');//鏈接數(shù)據(jù)庫

      $name = $_POST['name'];//post獲得用戶名表單值

      $passowrd = $_POST['password'];//post獲得用戶密碼單值

      if ($name && $passowrd){//如果用戶名和密碼都不為空

      $sql = "select * from user where username = '$name' and password='$passowrd'";//檢測數(shù)據(jù)庫是否有對應的username和password的sql $result = mysql_query($sql);//執(zhí)行sql $rows=mysql_num_rows($result);//返回一個數(shù)值

      if($rows){//0 false 1 true

      header("refresh:0;url=welcome.html");//如果成功跳轉(zhuǎn)至welcome.html頁面

      exit;

      }else{

      echo "用戶名或密碼錯誤";

      echo "

      ";//如果錯誤使用js 1秒后跳轉(zhuǎn)到登錄頁面重試;

      }

      }else{//如果用戶名或密碼有空

      echo "表單填寫不完整";

      echo "

      ";

      //如果錯誤使用js 1秒后跳轉(zhuǎn)到登錄頁面重試;

      }

      mysql_close();//關(guān)閉數(shù)據(jù)庫

      ?>

      3 結(jié)語

      經(jīng)過對該用戶注冊登錄系統(tǒng)的調(diào)試與測試表明,系統(tǒng)基本滿足要求,能夠很好地起到保護網(wǎng)站或系統(tǒng)數(shù)據(jù)信息的作用,并隔離不良用戶的惡意登錄或暴力攻擊。此系統(tǒng)后續(xù)使用過程中,一方面可以添加圖層及樣式,美化系統(tǒng)界面,另一方面可以結(jié)合并加載一種注冊登錄系統(tǒng)圖片驗證碼[5],提高用戶注冊與登錄的驗證難度,從而進一步提高網(wǎng)站或系統(tǒng)的安全防范能力。

      參考文獻:

      [1] 曹華平,崔盈雪,趙鑫,等.2015中國互聯(lián)網(wǎng)網(wǎng)站發(fā)展狀況及其安全報告[J].互聯(lián)網(wǎng)天地,2016(4):70-74.

      [2] 杜峰.國家勾畫網(wǎng)信事業(yè)戰(zhàn)略藍圖 網(wǎng)絡(luò)安全亟待核心技術(shù)突破[DB/OL].http://www.p5w.net/news/cjxw/201605/t20160504_1435997.htm,2016-05-04.

      [3] 羅鵬.網(wǎng)站開發(fā)的數(shù)據(jù)庫構(gòu)建[J].電子技術(shù)與軟件工程,2014(13):214.

      [4] 魏善沛.網(wǎng)站數(shù)據(jù)庫連接技術(shù)[J].教育信息化,2003(7): 44-45.

      [5] 陳義中,李松林.一種注冊登錄系統(tǒng)圖片驗證碼設(shè)計與實現(xiàn)[J].軟件導刊,2016,15(7): 82-85.

      (責任編輯:孫 娟)

      猜你喜歡
      系統(tǒng)設(shè)計
      一種基于SATA硬盤陣列的數(shù)據(jù)存儲與控制系統(tǒng)設(shè)計研究
      工業(yè)熱電偶計量檢定系統(tǒng)設(shè)計
      基于物聯(lián)網(wǎng)的煤礦智能倉儲與物流運輸管理系統(tǒng)設(shè)計與應用
      目標特性測量雷達平臺建設(shè)構(gòu)想
      科技視界(2016年22期)2016-10-18 14:34:34
      娱乐| 桂林市| 镇原县| 江安县| 从化市| 通化市| 日喀则市| 泰宁县| 临泉县| 锦州市| 松江区| 茂名市| 房山区| 民县| 惠东县| 商南县| 新巴尔虎左旗| 老河口市| 河西区| 宁化县| 社会| 安远县| 麟游县| 乌兰察布市| 铜陵市| 镇平县| 方城县| 怀安县| 报价| 浠水县| 思茅市| 保亭| 漯河市| 宁化县| 永春县| 卓资县| 明光市| 务川| 颍上县| 万荣县| 台前县|