$arr = $_POST;
$formvars["carNO"] = $arr['carNO'];
$formvars["CLSBDH"] = $arr['CLSBDH'];
$formvars["cardNO"] = $arr['cardNO'];
$formvars["icard"] = $arr['icard'];
$formvars["cartype"] = $arr['cartype'];
$formvars["RAND"] = $arr['RAND'];
$formvars["type"] = $arr['type'];
$action = "http://search.wzsjj.cn:8000/search/jsp/base/carSearch.jsp";//表单提交地址    
$snoopy = new Snoopy;   
$snoopy->cookies["JSESSIONID"] = $_SESSION['JSESSIONID'];
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)"; //伪装浏览器
$snoopy->rawheaders["Pragma"] = "no-cache"; //cache 的http头信息
echo $_SESSION['JSESSIONID'];
$snoopy->referer = "http://search.wzsjj.cn:8000/search/jsp/base/carSearch.jsp"; 
$snoopy->submit($action,$formvars);//$formvars为提交的数组
$html = $snoopy->results; 

$html = str_replace("/search", "http://search.wzsjj.cn:8000/search/", $html);
echo $html;
$_SESSION['JSESSIONID']
是从http://search.wzsjj.cn:8000/search/jsp/base/carSearch.jsp读取过来的我运行的时候每次都验证码出错是这个$snoopy->cookies没有设好吗
我看一些例子
$snoopy->cookies["SessionID"] = '238472834723489';
$snoopy->cookies["favoriteColor"] = "blue";
这么写的
他们sessionid是从哪里得来的,不懂

解决方案 »

  1.   

    $snoopy->cookies["SessionID"]?
    这里的SessionID应该理解为客户端的 cookies ,仅仅是一个cookies的字段填写验证码后用 snoopy 提交表单的?
      

  2.   

    http://search.wzsjj.cn:8000/search/jsp/base/carSearch.jsp
    这个是JSP的,他的头部返回过来的信息是0: HTTP/1.0 200 OK 
    1: Server: Resin/3.0.23 
    2: Cache-Control: no-cache 
    3: Expires: Thu, 01 Dec 1994 16:00:00 GMT 
    4: Set-Cookie: JSESSIONID=abc0AOe_pE1Fv6C85Hlus; path=/ 
    5: Content-Type: text/html; charset=UTF-8 
    6: Date: Thu, 19 Nov 2009 08:20:55 GMT 4: Set-Cookie: JSESSIONID=abc0AOe_pE1Fv6C85Hlus; path=/ $snoopy->cookies["SessionID"]所以我才填写$snoopy->cookies["JSESSIONID"] = abc0AOe_pE1Fv6C85Hlus;
      

  3.   

    我不知道服务器SESSION怎么获取,JSESSIONID是cookies,那容易获取,但是好像不能解决这个验证码问题