普通的表单登陆怎么修改成php curl模拟表单登陆
<form method="post" action="2.php"><br /> 用户名: <input type='text' name="loginname"><br><br /> 密码:<input type="password" name='loginpass'><br><br /> <input type='submit' value="submit"><br /></form> 2.php
header('Content-Type:text/html;Charset=utf-8');<br />if ($_POST['loginname'] == 'lee' && $_POST['loginpass'] == '123456') {<br /> header('location:http://bbs.csdn.net');<br />} else {<br /> <br />} 请教一下这样的表单怎么修改成模拟登陆 我是这样写的为什么不对呢
新建一个1.php
header('Content-type:text/html;Charset=utf-8'); <br />$user = 'lee'; //登陆用户名 <br />$pass = '123456'; //登陆密码 <br />$post_fields = "loginname={$user}&loginpass={$pass}";<br />$ch = curl_init(); <br />curl_setopt($ch,CURLOPT_URL,'http://localhost/2.php');<br />curl_setopt($ch,CURLOPT_POST,1);<br />curl_setopt($ch,CURLOPT_POSTFIELDS,$post_fields);<br />curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); <br />curl_exec($ch);<br />curl_close($ch); ------解决方案-------------------- echo curl_exec($ch);
另外你的2.php是跳转了,并没有返回内容。
改成echo file_get_contnets('location:http://bbs.csdn.net'); 试试
------解决方案-------------------- header('location:http://bbs.csdn.net');
形成的 http 头
HTTP/1.1 302 Found
Date: Wed, 26 Feb 2014 09:16:38 GMT
location: http://bbs.csdn.net
Content-Length: 0
Content-Type: text/html;Charset=utf-8
你不跟着跳转吗?
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
------解决方案-------------------- #1 不是说了吗?
echo curl_exec($ch);
你不输出结果怎么能行?
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script></script>
CSDN论坛首页 - CSDN.NET
<script></script>
<script><br /> $(function() {<br /> main_page_js.index_page();<br /> });<br /> </script>
Statement: The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn