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的substr_replace将指定两位置之间的字符替换为*号
May 04 PHP
PHP中usort在值相同时改变原始位置问题的解决方法
Nov 27 PHP
JS中encodeURIComponent函数用php解码的代码
Mar 01 PHP
使用PHP获取当前url路径的函数以及服务器变量
Jun 29 PHP
浅析php过滤html字符串,防止SQL注入的方法
Jul 02 PHP
CI(CodeIgniter)框架中的增删改查操作
Jun 10 PHP
Codeigniter实现智能裁剪图片的方法
Jun 12 PHP
一个图片地址分解程序(用于PHP小偷程序)
Aug 23 PHP
php中使用session防止用户非法登录后台的方法
Jan 27 PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 PHP
PHP实现PDO操作mysql存储过程示例
Feb 13 PHP
TP5框架页面跳转样式操作示例
Apr 05 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
追忆往昔!浅谈收音机的百年发展历史
2021/03/01 无线电
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
PHP 搜索查询功能实现
2016/11/29 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
实例:尽可能写友好的Javascript代码
2006/10/09 Javascript
JS获取当前日期时间并定时刷新示例
2021/03/04 Javascript
Javascript 绘制 sin 曲线过程附图
2014/08/21 Javascript
深入探讨JavaScript String对象
2015/03/09 Javascript
JavaScript控制网页层收起和展开效果的方法
2015/04/15 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
JS+CSS相对定位实现的下拉菜单
2015/10/06 Javascript
jquery实现表格隔行换色效果
2015/11/19 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
JS+Canvas绘制时钟效果
2020/08/20 Javascript
详解使用vue脚手架工具搭建vue-webpack项目
2017/05/10 Javascript
NodeJS使用七牛云存储上传文件的方法
2017/07/24 NodeJs
js代码规范之Eslint安装与配置详解
2018/09/08 Javascript
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
python实现SMTP邮件发送功能
2020/06/16 Python
Python3中_(下划线)和__(双下划线)的用途和区别
2019/04/26 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
Python建造者模式案例运行原理解析
2020/06/29 Python
开发人员所需要知道的HTML5性能分析面面观
2012/07/05 HTML / CSS
HTML5的一个显示电池状态的API简介
2015/06/18 HTML / CSS
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
MAC Cosmetics巴西官方网站:M·A·C彩妆
2019/04/18 全球购物
JAVA招聘远程笔试题
2015/07/23 面试题
财务会计人员岗位职责
2013/11/30 职场文书
原料仓管员岗位职责
2014/04/12 职场文书
《吃水不忘挖井人》教学反思
2014/04/15 职场文书
计划生育证明书写要求
2014/09/17 职场文书
三行辞职书范文
2015/02/26 职场文书
法院答辩状格式
2015/05/22 职场文书
网吧员工管理制度
2015/08/05 职场文书
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS
基于Python实现将列表数据生成折线图
2022/03/23 Python