PHP簡單實現模擬登陸功能示例

更新:2017-10-25    編輯:傲藍    來源:geguai    人氣:加載中...    字號:|

標簽:簡單  實現  功能  模擬  示例  登陸  百度搜索

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

在不考慮驗證碼的情況一下,php實現模擬登陸,網上給的辦法一般是采納curl來模擬實現,但是curl實現的是服務器端與服務器端建立了會話,只能模擬登陸之后獲取登陸之后的數據,無法將cookie信息種植到客戶端上(至少目前本人查找沒有找到辦法)最后自己通過隱藏的iframe來實現。

1、curl實現模擬登陸的代碼,(只是實現服務器與服務器建立會話,,其實并沒有在客戶端與服務器之間建立會話)

<?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); //設定返回的數據是否自動顯示 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //設定是否顯示頭信息 curl_setopt($ch, CURLOPT_HEADER, false); //設定是否輸出頁面內容 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實現客戶端與服務器端的通信(肯能帶來一定的安全隱患)

<html> <title></title> <body> <? $goURL="http://192.168.0.22/general/email/"; ?> <iframe src="ceshi1.php" width=0 height=0 frameborder=0 scrolling=no> </iframe> <script Language="JavaScript"> function get_pass() { window.open("<?=$goURL ?>"); window.close(); } </script> </body> </html>

ceshi1.php

<html> <head> <title>ceshi</title> </head> <body> <form method="post" target="hiddenLoginFrame" action="http://192.168.0.22/logincheck.php"> <input type="text" value="admin"> <input type="text" value="123456"> </form> </body> <script Language="JavaScript"> function get_pass1() { //document.form1.action=u_url; document.form1.submit(); } </script> </html>


評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)

站點導航

您可能在找這些
黑龙江快乐十分走势图