PHP简单实现模拟登陆功能示例


Posted in PHP onSeptember 15, 2017

本文实例讲述了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 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>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
基于mysql的bbs设计(五)
Oct 09 PHP
文件系统基本操作类
Nov 23 PHP
PHP中的extract的作用分析
Apr 09 PHP
深入了解PHP类Class的概念
Jun 14 PHP
改写ThinkPHP的U方法使其路由下分页正常
Jul 02 PHP
取得单条网站评论以数组形式进行输出
Jul 28 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
PHP浮点比较大小的方法
Feb 14 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
Dec 15 PHP
PHP使用new StdClass()创建空对象的方法分析
Jun 06 PHP
PHP图片水印类的封装
Jul 06 PHP
Yii框架日志记录Logging操作示例
Jul 12 PHP
Thinkphp开发--集成极光推送
Sep 15 #PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
Sep 15 #PHP
Laravel框架用户登陆身份验证实现方法详解
Sep 14 #PHP
LNMP部署laravel以及xhprof安装使用教程
Sep 14 #PHP
Laravel框架实现redis集群的方法分析
Sep 14 #PHP
ThinkPHP开发--使用七牛云储存
Sep 14 #PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
Sep 13 #PHP
You might like
一个php作的文本留言本的例子(四)
2006/10/09 PHP
使用adodb lite解决问题
2006/12/31 PHP
深入探究PHP的多进程编程方法
2015/08/18 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
CodeIgniter框架钩子机制实现方法【hooks类】
2018/08/21 PHP
laravel数据库查询结果自动转数组修改实例
2021/02/27 PHP
javaScript 利用闭包模拟对象的私有属性
2011/12/29 Javascript
多个表单中如何获得这个文件上传的网址实现js代码
2013/03/25 Javascript
JavaScript省市联动实现代码
2014/02/15 Javascript
js实现文本框中焦点在最后位置
2014/03/04 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
jQuery on()方法示例及jquery on()方法的优点
2015/08/27 Javascript
js实现简单计算器
2015/11/22 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
基于js里调用函数时,函数名带括号和不带括号的区别
2016/07/28 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
在windows上用nodejs搭建静态文件服务器的简单方法
2016/08/11 NodeJs
设置jquery UI 控件的大小方法
2016/12/12 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
JS常用的几种数组遍历方式以及性能分析对比实例详解
2018/04/11 Javascript
vue 登录滑动验证实现代码
2018/08/24 Javascript
Vue 实现展开折叠效果的示例代码
2018/08/27 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
vue 设置 input 为不可以编辑的实现方法
2019/09/19 Javascript
JS实现排行榜文字向上滚动轮播效果
2019/11/26 Javascript
python3调用R的示例代码
2018/02/23 Python
使用Python函数进行模块化的实现
2019/11/15 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
2020/12/13 Python
工商管理专业实习生自我鉴定
2013/09/29 职场文书
秋季运动会广播稿
2014/02/22 职场文书
超市促销活动总结
2014/07/01 职场文书
个人投资合作协议书
2014/10/12 职场文书
运动会班级口号霸气押韵
2015/12/24 职场文书
歌咏比赛口号大全
2015/12/25 职场文书