主頁 > 知識庫 > PHP 模擬登陸功能實例詳解

PHP 模擬登陸功能實例詳解

熱門標(biāo)簽:服務(wù)器配置 Linux服務(wù)器 Mysql連接數(shù)設(shè)置 阿里云 團(tuán)購網(wǎng)站 銀行業(yè)務(wù) 電子圍欄 科大訊飛語音識別系統(tǒng)

本文實例講述了PHP 模擬登陸功能。分享給大家供大家參考,具體如下:

說明:該模擬登陸實例僅適用于沒有驗證碼的模擬登陸實例

該程序基本功能是,模擬登陸高校圖書館網(wǎng)站,并獲取讀者信息和借書信息。

程序截圖:

目錄結(jié)構(gòu):

login.php

form method="post" class="am-form" action="judge.php">
   label for="sid">學(xué)號:/label>
   input type="text" name="number" id="sid" value="">
   br>
   label for="password">密碼:/label>
   input type="password" name="passwd" id="password" value="">
   br>
   div class="am-cf">
    input type="submit" name="" value="登 錄" class="am-btn am-btn-primary am-btn-sm am-fl">
    input type="submit" name="" value="忘記密碼 ^_^? " class="am-btn am-btn-default am-btn-sm am-fr">
   /div>
  /form>

judge.php

session_start();
require_once 'curl.php';
$url = "http://opac.lib.ustc.edu.cn/reader/redr_info.php";
$number = $_POST['number'];
$passwd = $_POST['passwd'];
$res = run_curl($url,$number,$passwd);
$pattern = '/TD>span class=\"bluetext\">姓名:\/span>(.*)\/TD>/';
preg_match($pattern, $res,$arr1);
if(is_array($arr1)){
 $_SESSION['number'] = $number;
 $_SESSION['passwd'] = $passwd;
 $_SESSION['name'] = $arr1[1];
 echo "script>window.location.href='index.php';/script>";
}else{
 echo "script>history.go(-1);/script>";
}

curl.php

?php
function run_curl($content_url,$number='',$passwd=''){
  $cookie_file = tempnam('./temp','cookie');
  $url = "http://opac.lib.ustc.edu.cn/reader/redr_verify.php";
  $ch = curl_init($url);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
  $post_fileds = "number=$numberpasswd=$passwdselect=bar_no";
  curl_setopt($ch,CURLOPT_POST,1);
  curl_setopt($ch,CURLOPT_POSTFIELDS,$post_fileds);
  curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file);
  curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file);
  $content = curl_exec($ch);
  curl_close($ch);
  $ch = curl_init($content_url);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
  curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file);
  curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file);
  $res = curl_exec($ch);
  curl_close($ch);
  return $res;
}

index.php

?php
  session_start();
  $number = $_SESSION['number'];
  $passwd = $_SESSION['passwd'];
  $username = $_SESSION['name'];
  if($number==''||$passwd==''||$username==''){
    echo "script>window.location.href='login.php';/script>";
    exit();
  }
  require_once 'curl.php';
  header('Content-type:text/html;charset=utf-8');
  $url = "http://opac.lib.ustc.edu.cn/reader/book_lst.php";
  $res = run_curl($url,$number,$passwd); //通過curl抓取數(shù)據(jù)
  $pattern = '/td class="whitetext" width="35%">a class="blue" href="(.*)" rel="external nofollow" >(.*)\/a>/';//正則匹配獲得圖書信息
  preg_match_all($pattern, $res,$book_arr);
  $booklist = array();
  $booklist = $book_arr[2];  //借閱圖書列表
  //var_dump($booklist);
  $pattern = '/font color=(red|)>(.*)\/font>/';//正則匹配獲得還書信息
  preg_match_all($pattern, $res,$date_arr);
  $datelist = array();
  $datelist = $date_arr[2];  //應(yīng)歸還日期列表
  $taglist = array();
  $taglist = $date_arr[1];  //標(biāo)記是否超期
  //var_dump($date_arr);
?>

logout.php

?php
session_start();
$_SESSION = array();
session_destroy();
?>
script>window.location.href='login.php'/script>

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php curl用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》及《PHP中json格式數(shù)據(jù)操作技巧匯總》

希望本文所述對大家PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • php實現(xiàn)模擬登陸方正教務(wù)系統(tǒng)抓取課表
  • PHP函數(shù)分享之curl方式取得數(shù)據(jù)、模擬登陸、POST數(shù)據(jù)
  • PHP實現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法【文字,圖片,圖文】
  • php模擬登陸的實現(xiàn)方法分析
  • php中通過curl模擬登陸discuz論壇的實現(xiàn)代碼
  • php 論壇采集程序 模擬登陸,抓取頁面 實現(xiàn)代碼
  • PHP簡單實現(xiàn)模擬登陸功能示例
  • php實現(xiàn)微信模擬登陸、獲取用戶列表及群發(fā)消息功能示例
  • PHP 模擬登陸MSN并獲得用戶信息
  • php通過curl模擬登陸DZ論壇
  • PHP模擬登陸163郵箱發(fā)郵件及獲取通訊錄列表的方法

標(biāo)簽:大理 衡水 衢州 棗莊 廣元 萍鄉(xiāng) 蚌埠 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP 模擬登陸功能實例詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266