普通的表单登陆怎么修改成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>
Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn