PHP簡單實(shí)現(xiàn)模擬登陸功能示例
本文實(shí)例講述了PHP簡單實(shí)現(xiàn)模擬登陸功能。分享給大家供大家參考,具體如下:
在不考慮驗(yàn)證碼的情況一下,php實(shí)現(xiàn)模擬登陸,網(wǎng)上給的辦法一般是采用curl來模擬實(shí)現(xiàn),但是curl實(shí)現(xiàn)的是服務(wù)器端與服務(wù)器端建立了會話,只能模擬登陸之后獲取登陸之后的數(shù)據(jù),無法將cookie信息種植到客戶端上(至少目前本人查找沒有找到辦法)最后自己通過隱藏的iframe來實(shí)現(xiàn)。
1、curl實(shí)現(xiàn)模擬登陸的代碼,(只是實(shí)現(xiàn)服務(wù)器與服務(wù)器建立會話,其實(shí)并沒有在客戶端與服務(wù)器之間建立會話)
<?php
$cookie_jar = tempnam('./tmp','cookie');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://192.168.0.22/logincheck.php');
curl_setopt($ch, CURLOPT_POST, 1);
$request = 'UNAME=admin&PASSWORD=123456';
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
//把返回來的cookie信息保存在$cookie_jar文件中
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
//設(shè)定返回的數(shù)據(jù)是否自動(dòng)顯示
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//設(shè)定是否顯示頭信息
curl_setopt($ch, CURLOPT_HEADER, false);
//設(shè)定是否輸出頁面內(nèi)容
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_exec($ch);
curl_close($ch);
//get data after login
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, 'http://192.168.0.22/general/');
curl_setopt($ch2, CURLOPT_HEADER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie_jar);
$orders = curl_exec($ch2);
echo $orders;
exit;
echo '<pre>';
echo strip_tags($orders);
echo '</pre>';
curl_close($ch2);
?>
2、通過隱藏的iframe實(shí)現(xiàn)客戶端與服務(wù)器端的通信(肯能帶來一定的安全隱患)
<html>
<title></title>
<body>
<?
$goURL="http://192.168.0.22/general/email/";
?>
<iframe name="hiddenLoginFrame" onload="get_pass()" src="ceshi1.php" id="hiddenLoginFrame" width=0 height=0 frameborder=0 scrolling=no style="display:none;">
</iframe>
<script Language="JavaScript">
function get_pass()
{
window.open("<?=$goURL ?>");
window.close();
}
</script>
</body>
</html>
ceshi1.php
<html>
<head>
<title>ceshi</title>
</head>
<body onload="get_pass1();">
<form name="form1" method="post" target="hiddenLoginFrame" action="http://192.168.0.22/logincheck.php">
<input type="text" value="admin" name="UNAME">
<input type="text" value="123456" name="PASSWORD">
</form>
</body>
<script Language="JavaScript">
function get_pass1()
{
//document.form1.action=u_url;
document.form1.submit();
}
</script>
</html>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php curl用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- php實(shí)現(xiàn)模擬登陸方正教務(wù)系統(tǒng)抓取課表
- PHP函數(shù)分享之curl方式取得數(shù)據(jù)、模擬登陸、POST數(shù)據(jù)
- PHP實(shí)現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法【文字,圖片,圖文】
- php模擬登陸的實(shí)現(xiàn)方法分析
- php中通過curl模擬登陸discuz論壇的實(shí)現(xiàn)代碼
- php 論壇采集程序 模擬登陸,抓取頁面 實(shí)現(xiàn)代碼
- php實(shí)現(xiàn)微信模擬登陸、獲取用戶列表及群發(fā)消息功能示例
- PHP 模擬登陸MSN并獲得用戶信息
- php通過curl模擬登陸DZ論壇
- PHP模擬登陸163郵箱發(fā)郵件及獲取通訊錄列表的方法
- PHP 模擬登陸功能實(shí)例詳解
相關(guān)文章
PHPMailer發(fā)送郵件功能實(shí)現(xiàn)流程
隨著企業(yè)化的管理越來越規(guī)范,各種項(xiàng)目管理系統(tǒng)中,都需要加入到郵件實(shí)時(shí)通知功能,所以在項(xiàng)目中如何整合發(fā)郵件功能,其實(shí)也是很重要的一點(diǎn)。本文為大家介紹了PHP實(shí)現(xiàn)郵件實(shí)時(shí)通知功能的示例代碼,需要的可以參考一下2022-12-12
php比較多維數(shù)組中值的大小排序?qū)崿F(xiàn)代碼
php中根據(jù)數(shù)組的鍵(key)進(jìn)行比較,排序,有很多內(nèi)置函數(shù)可以輕松解決,如krsort(), ksort()等。如果是根據(jù)數(shù)組的值(value)進(jìn)行比較就麻煩一些2012-09-09
PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法簡單示例
這篇文章主要介紹了PHP面向?qū)ο蟪绦蛟O(shè)計(jì)繼承用法,結(jié)合具體實(shí)例形式分析了php面向?qū)ο蟪绦蛟O(shè)計(jì)中繼承的相關(guān)概念、原理、使用技巧與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-12-12
php有序列表或數(shù)組中刪除指定的值的實(shí)現(xiàn)代碼
這篇文章主要介紹了php有序列表或數(shù)組中刪除指定的值的實(shí)現(xiàn)代碼,刪除給定的值之后,得到一個(gè)新的有序列表,長度-1,下面是具體的實(shí)現(xiàn)方法2021-08-08
php統(tǒng)計(jì)數(shù)組不同元素的個(gè)數(shù)的實(shí)例方法
在本篇文章里小編給大家整理的是關(guān)于php統(tǒng)計(jì)數(shù)組不同元素的個(gè)數(shù)的實(shí)例方法以及相關(guān)知識點(diǎn),有需要的朋友們學(xué)習(xí)下。2019-09-09

