通过php请求实现的登陆
Posted 意灵魔法馆
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过php请求实现的登陆相关的知识,希望对你有一定的参考价值。
<?php /** * Created by PhpStorm. * User: 意灵魔法馆 * Date: 2016/5/24 0024 * Time: 下午 17:07 */ //开始之前做几点说明,首先你得知道用户名和密码因为是模拟浏览器行为实现登陆,浏览器在请求也需要用户数据才能跳转到其他页面 //初始curl资源 $curl = curl_init(); //配置 curl_setopt($curl, CURLOPT_URL, ‘www.tang.com/blog/admin/user.php?a=check‘); curl_setopt($curl, CURLOPT_USERAGENT, ‘TANG‘); curl_setopt($curl, CURLOPT_REFERER, ‘blog/admin/user.php‘); $data = array( ‘username‘ => ‘tangshuai‘, ‘password‘ => ‘tangshuai‘, ‘captcha‘ => ‘‘ ); $data_str = http_build_query($data); $header[] = ‘Accept:text/html‘; $header[] = ‘Accept-Language:zh-CN‘; $header[] = ‘Connection:close‘; //设置cookie存储的地址 $cookie_address = ‘E:/tangdengshuai/Apache24/htdocs/myweb3/cookie‘; curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_address); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $data_str); curl_setopt($curl, CURLOPT_HEADER, $header); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); //发出请求 $response = curl_exec($curl); echo iconv(‘utf-8‘, ‘gbk‘, $response); //关闭资源 curl_close($curl); //初始化curl资源 $curl=curl_init(); // //请求时携带cookie $cookie_address=‘E:/tangdengshuai/Apache24/htdocs/myweb3/cookie‘; curl_setopt($curl,CURLOPT_COOKIEFILE,$cookie_address); //配置get请求所需的数据 curl_setopt($curl,CURLOPT_URL,‘www.tang.com/blog/admin/index.php‘); //配置请求代理端的数据 curl_setopt($curl,CURLOPT_USERAGENT,‘TANG‘); //配置请求来源 curl_setopt($curl,CURLOPT_REFERER,‘www.tang.com/blog‘); //额外的请求头信息 $header[]=‘Accept:text/html‘; $header[]=‘Accept-Language:zh-CN‘; $header[]=‘Connection:close‘; curl_setopt($curl,CURLOPT_HEADER,$header); //将头部当输出内容 curl_setopt($curl,CURLOPT_HEADER,true); //不直接输出内容 curl_setopt($curl,CURLOPT_RETURNTRANSFER,true); //发送请求 $response=curl_exec($curl); echo iconv(‘utf-8‘,‘gbk‘,$response); //关闭curl资源 curl_close($curl);
以上是关于通过php请求实现的登陆的主要内容,如果未能解决你的问题,请参考以下文章