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 相关文章推荐
用php+mysql一个名片库程序
Oct 09 PHP
wiki-shan写的php在线加密的解密程序
Sep 07 PHP
一个典型的PHP分页实例代码分享
Jul 28 PHP
解析CodeIgniter自定义配置文件
Jun 18 PHP
php/js获取客户端mac地址的实现代码
Jul 08 PHP
php inc文件使用的风险和注意事项
Nov 12 PHP
php清空(删除)指定目录下的文件,不删除目录文件夹的实现代码
Sep 04 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
Dec 24 PHP
CI映射(加载)数据到view层的方法
Mar 28 PHP
PHP上传Excel文件导入数据到MySQL数据库示例
Oct 25 PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 PHP
Laravel6.18.19如何优雅的切换发件账户
Jun 14 PHP
Thinkphp开发--集成极光推送
Sep 15 #PHP
php插件Xajax使用方法详解
Aug 31 #PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 #PHP
php注册系统和使用Xajax即时验证用户名是否被占用
Aug 31 #PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 #PHP
laravel如何开启跨域功能示例详解
Aug 31 #PHP
Laravel构建即时应用的一种实现方法详解
Aug 31 #PHP
You might like
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
JavaScript表达式:URL 协议介绍
2013/03/10 Javascript
简单漂亮的js弹窗可自由拖拽且兼容大部分浏览器
2013/10/22 Javascript
jQuery中ajax的load()与post()方法实例详解
2016/01/05 Javascript
用js读写cookie的简单方法(推荐)
2016/08/08 Javascript
request请求获取参数的实现方法(post和get两种方式)
2016/09/27 Javascript
微信小程序 wx.uploadFile无法上传解决办法
2016/12/14 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
JavaScript 日期时间选择器一些小结
2018/04/02 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
从零到一详聊创建Vue工程及遇到的常见问题
2019/04/25 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
vue项目出现页面空白的解决方案
2019/10/31 Javascript
JavaScript碰撞检测原理及其实现代码
2020/03/12 Javascript
[06:20]2015国际邀请赛第三日top10
2015/08/08 DOTA
[57:36]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第三场 2月1日
2021/03/11 DOTA
详解Python中的__init__和__new__
2014/03/12 Python
浅谈Python的Django框架中的缓存控制
2015/07/24 Python
Python部署web开发程序的几种方法
2017/05/05 Python
python reverse反转部分数组的实例
2018/12/13 Python
python给指定csv表格中的联系人群发邮件(带附件的邮件)
2019/12/31 Python
Python解析多帧dicom数据详解
2020/01/13 Python
Python Pandas 对列/行进行选择,增加,删除操作
2020/05/17 Python
基于Python组装jmx并调用JMeter实现压力测试
2020/11/03 Python
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
日语专业毕业生求职信
2013/12/04 职场文书
生物科学专业个人求职信范文
2013/12/07 职场文书
爱情保证书范文
2014/02/01 职场文书
模范教师事迹材料
2014/02/10 职场文书
毕业班联欢会主持词
2014/03/27 职场文书
爱的奉献演讲稿
2014/09/10 职场文书
经理聘任证明
2015/03/02 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
python基础之文件操作
2021/10/24 Python