在我的组织中,我可以通过在浏览器的 URL 中键入该打印机的 IP 来访问所有打印机详细信息。打印机的“日志”页面有一个动态 URL(每个瞬间都有一个“虚拟”变量变化。它们的源代码涉及 Date 和 getTime 函数的使用)。嗯,这是我为生成日志页面的动态 http 地址而编写的代码。
<html>
<head>
<script type="text/javascript">
function getu() {
var now_time = new Date();
var cgi_str = "http://10.128.57.200/jlp.cgi?Flag=Html_Data&LogType=0&Dummy=" + now_time.getTime();
document.getElementById("address").value=cgi_str ;
}
</script>
</head>
<body onLoad="getu()">
<form id="mldsform" action="curlexp2.php" method="post" >
<input type="hidden" id="address" name="address" />
<input type="submit" name="submit" value="Log In" />
</form>
</body>
</html>
curlexp2.php 的代码如下:
<?php
$proxy = "10.128.60.40:3128";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$_POST["address"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$result= curl_exec ($ch);
echo $result;
curl_close ($ch);
?>
这就是我在执行时得到的:
User information is disabled.
This operation cannot be accepted. User certification is invalid or date expired.
Update page.
OK
但是,当我只是回显 $_POST["address"] 时,我能够得到正确的地址。任何线索任何人?在此先感谢您的帮助..