一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

php管理員登錄 驗證與添加 (前端驗證)

 abcen 2021-09-07

//造成亂碼的原因為數(shù)據(jù)庫(源),網(wǎng)頁編碼,文件編碼,php代碼,數(shù)據(jù)庫傳輸過程編碼mysql_query('SET NAMES utf8')

header('Content-Type:text/html;charset=utf-8');

header('Cache-control:private');                //頁面啟用session之后,退回去時表單數(shù)據(jù)還存在。

session_start();                        //session_start()前面不能有內(nèi)容輸出

//連接服務器,數(shù)據(jù)庫,(服務器的IP地址或者域名,用戶名,密碼)

$server = '127.0.0.1';

$user = 'root';

$pwd = '';

//將連接結(jié)果存入一個變量,并用錯誤抑制符@

@ $linkid = mysql_connect($server,$user,$pwd);

//輸出錯誤,終止程序。

if(!$linkid)

{

  die('與服務器'.$server.'的連接失敗,原因為'.mysql_error());

}

//選擇數(shù)據(jù)庫

$database = 'e1215cms';

$rs = mysql_select_db($database);

if(!$rs)

{

  die('選擇數(shù)據(jù)庫'.$database.'失敗,錯誤原因為'.mysql_error());

}

//數(shù)據(jù)庫傳輸過程編碼mysql_query()該函數(shù)可以將代碼放入服務器、數(shù)據(jù)庫上運行。。

mysql_query('SET NAMES utf8');

將這部分代碼作為獨立文件,放入includes文件夾,將代碼放入新建的config.php文件。

用require('../includes/config.php');調(diào)用.

//流程:入口頁—login.html,用post方式提交到login.php,到數(shù)據(jù)庫查詢post過來的password和username。

$username = $_POST['username'];

$password = md5( $_POST['password'] );      //由于表單中的密碼被加密,所以要用加密函數(shù)

 $sql=" select * from `tb_admin` where `username` = '$username' and `password` = '$password' LIMIT 1";   //加快執(zhí)行效率

//用雙引號

$sql = 'SELECT FROM `tb_admin` WHERE `username ` = " '.$username.' " AND `password` = " '.$password.' " ';

$result = mysql_query($sql);              //$result代表執(zhí)行sql語句后的結(jié)果集,用來判斷sql語句是否執(zhí)行成功

//判斷sql語句是否出錯,如果有錯,終止程序,輸出錯誤。如果查詢數(shù)據(jù)為0,依然代表執(zhí)行成功,不代表$result為false.

if(!$result)

{

  die(mysql_error());

}

//從查詢到的結(jié)果集中抓取到$r

$data = mysql_fetch_assoc($result);

if(!$data)

{

  die('<script>alert("不正確");window.location="login.html"</script>')       //退回去,不保留原表單中的數(shù)據(jù)。

  die('<script>alert("不正確");window.history.back()</script>');        //退回去,能夠保留原表單中的數(shù)據(jù)。

}

else

{

  //驗證管理員登陸,用全局變量$_SESSION,服務器端生成文件,安全性高。$_COOKIE驗證會員登錄,客戶端生成,安全性不高。

  $_SESSION['username'] = $data['username'];

  $_SESSION['id'] = $data['id'];

  echo '輸入正確,您的ID是:'.$data['id'];

  print_r($r);                        //返回的為數(shù)組

  header('location:index.php');                 //PHP跳轉(zhuǎn)

  die('<script>window.location="index.php";</script>')

}

檢測$_SESSION,放入includes,

session_start();

if(!$_SESSION['username'] || !$_SESSION['id'])

 {

  header('Location:login.html');

  die('<script>window.location="login.html";</script>');

 }

 //添加管理員,add-admin.php,驗證功能盡量寫在前端。

 require(../includes/check-admin.php);

<script>

function check(obj)

{

  /*var n = document.getElementsByName('username')[0];    //getElementsByName抓取到的是數(shù)組,因此需要下標來指定值;*/

  var n = obj.elements['username'];    //返回的為對象或集合(自動判斷是對象還是集合,適合單選按鈕,復選框。)  OR

  var n = obj.username;

  if(n.value == '' )

  {

    alert('用戶名不能為空');

    n.focus();          //定位光標到用戶名填寫框

    return false;

  }

  var p = obj.password;

  if(p.value )

  {

    alert('密碼不能為空');

    p.focus();          //定位光標到用戶名填寫框

    return false;

  }

  if(p.value != obj.confirmpwd.value)

  {

    alert('密碼輸入不一致');

    p.focus();

    p.select();                 //獲得焦點的同時,選中內(nèi)容

    obj.confirmpwd.focus();          //定位光標到用戶名填寫框

    return false;

  }

}

</script>

 <form action="admin_action.php" method="post" onsubmit="return check(this)">

<p>用戶名:<input type="text" name="username" /></p>

<p>密碼:<input type="password" name="password" /></p>

<p>密碼確認:<input type="password" id="confirmpwd" /></p>

<p><input tyep="submit" value="提交" /></p>

</form>

 //管理員列表頁

 <?php

   require(../includes/check-admin.php);

  //查詢所有管理員

  $sql = "SELECT * FROM e1215cms ORDER BY id DESC";   //將最新添加的管理員放在前面

  $result = mysql_query($sql);

  if(!$result)

  {

    die(mysql_error());

  } 

?>

 <table>

  <tr>

    <th>ID</th>

    <th>用戶名</th>

    <th>操作</th>

  </tr>

  <tr>

  <?php

    while($data = mysql_fetch_assoc($result))

    {

  ?>

    <td><?=$data['id']?></td>

    <td><?=$data['username']?></td>

    <td><a href="edit.php">編輯</a><a href="delete.php">刪除</a></td>

  </tr>

  <?php

    }

  ?>

 </table>

 //管理員添加

<?php

header('Cache-control:private');                          //頁面啟用session之后,退回去時表單數(shù)據(jù)存在。(密碼域和文件域除外)

session_start();

header('Content-Type:text/html;charset=utf-8');

?>

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    亚洲最新的黄色录像在线| 少妇丰满a一区二区三区| 国产精品成人又粗又长又爽| 午夜精品黄片在线播放| 国产日韩欧美在线亚洲| 在线观看视频成人午夜| 在线观看日韩欧美综合黄片| 国产视频一区二区三区四区| 老司机精品视频在线免费| 成年人免费看国产视频| 久久精品亚洲欧美日韩| 亚洲高清欧美中文字幕| 日本深夜福利在线播放| 东京热男人的天堂久久综合| 香蕉网尹人综合在线观看| 亚洲高清中文字幕一区二区三区| 黄色污污在线免费观看| 精品人妻一区二区三区在线看| 亚洲高清欧美中文字幕| 精品一区二区三区中文字幕| 夫妻性生活一级黄色录像| 在线免费不卡亚洲国产| 国产一级一片内射视频在线| 国产一级内片内射免费看 | 日本欧美视频在线观看免费| 日韩精品视频高清在线观看| 国产高清一区二区白浆| 一级片二级片欧美日韩| 婷婷九月在线中文字幕| 亚洲精品福利视频在线观看| 日韩一区二区三区在线欧洲| 色好吊视频这里只有精| 国产又粗又猛又爽色噜噜| 久久99爱爱视频视频| 美女露小粉嫩91精品久久久| 成人午夜视频在线播放| 国产福利在线播放麻豆| 欧美午夜一级特黄大片| 欧美日韩国产成人高潮| 中文字幕有码视频熟女| 精品人妻一区二区四区|