Heim > Fragen und Antworten > Hauptteil
网页代码
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="wsp">
<META NAME="Keywords" CONTENT="cmts">
<META NAME="Description" CONTENT="cmts manage">
<SCRIPT language=JavaScript type=text/javascript>
function login_click(formm) //输入用户名称密码函数
{
if(formm.operator_id.value == "")
{
alert("请输入用户号码");
formm.operator_id.focus();
return false;
}
if(formm.operator_password.value == "")
{
alert("请输入用户密码");
formm.operator_password.focus();
return false;
}
formm.submit();
return false;
}
</SCRIPT>
</HEAD>
<BODY onkeydown="if (event.keyCode == 13){login_click(document.all.form1);}" style="OVERFLOW:hidden" bgColor='#eeeeee'>
<TABLE height="100%" cellSpacing=0 cellPadding=0 width="100%" border='0'>
<TBODY>
<TR>
<TD>
<FORM name="form1" action='/login_check.php' method=post>
<TABLE width="100%" height=180 cellSpacing=0 cellPadding=0 bgColor='#0B4199' border='0' borderColor='#000000'>
<TBODY>
<TR>
<TD vAlign=top align=middle width="62.7%"><IMG src="/images/cmlogo.jpg" width=650 height=180></TD>
<TD vAlign=top>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR><TD colSpan=3 height=60><BR></TD></TR>
<TR>
<TD noWrap width="1%">工号(U)</TD>
<TD><INPUT accessKey=U maxLength=16 type='text' style='width:100px;height:20px' name="operator_id" id="manager_id"></TD>
</TR>
<TR>
<TD noWrap width="1%">密码(P)</TD>
<TD><INPUT accessKey=P maxLength=16 type='password' style='width:100px;height:20px' name='operator_password'></TD>
</TR>
<TR>
<TD colSpan=1 height=2><BR></TD>
<TD height=2>
<INPUT type='button' value=登录 onclick=login_click(this.form) name='Login'>
<INPUT type='reset' value=重置 name='reset'>
</TD>
</TR>
</TBODY>
</TABLE>
</TD>
</TR>
</TBODY>
</TABLE>
</FORM>
</TD>
</TR>
</TBODY>
</TABLE>
</BODY>
POST http://10.30.68.11/login_check.php HTTP/1.1
Host: 10.30.68.11
Connection: keep-alive
Content-Length: 36
Cache-Control: max-age=0
Origin: http://10.30.68.11
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Referer: http://10.30.68.11/login.php
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8
Cookie: PHPSESSID=2e764e6bf96979b430ad231ce2198a4a
operator_id=86&operator_password=951
自己的做法:
$cookie_jar = dirname(__FILE__)."/pic.cookie";
$post = "operator_id=86&operator_password=951";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://10.30.68.11/login_check.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
$result=curl_exec($ch);
var_dump($result);
curl_close($ch);
黄舟2017-04-11 10:03:58
可以将你的curl的代码进行封装,将url和param作为两个参数,调用的时候直接传入你需要模拟登陆的url和需要传递的参数就可以了
注意:
你模拟的url那边需要的参数需要的格式你这边传入时需要进行一致,否则怎么能够进行解析呢