switch to search';} // Switch to search and request auth $out = ''; $out = "GET /RETS/Search HTTP/1.1\r\n"; $out .= 'RETS-Version: ' . $rets_version . "\r\n"; $out .= 'Host: ' . $server . ':' . $port . "\r\n"; $out .= 'Cookie: RETS-Session-ID=' . $session_id . "\r\n"; $out .= "Accept: */*\r\n"; $out .= 'User-Agent: ' . $user_agent . "\r\n"; $response_initial = RETS_CONNECT($server, $port, $out, $show_comments, $response, $i); $nonce = PARSE_RESPONSE($response_initial, 'nonce='); $opaque = PARSE_RESPONSE($response_initial, 'opaque='); $A2 = md5('GET:/RETS/Search'); // (method:digest-uri-value) $resp = md5($A1 . ':' . $nonce . ':' . $A2); $cnonce = md5($user_agent . ':::' . $nonce); $resp = md5($A1 . ':' . $nonce . ':' . $nc . ':' . $cnonce . ':' . $qop . ':' . $A2); // authenicate in search and submit residential query //(TMODIFIED=' . $year . ') $query = ('?SearchType=PROPERTY&Class=RES&Select=' . $list_data . '&Query=(AgentList=' . $agent_list . '),(LISTSTATUS=' . $list_status . ')&Format=COMPACT-DECODED&Limit=NONE'); /* $query = rawurlencode('?SearchType=PROPERTY&Class=RES&Select=*&Query=(OfficeList=02105)&Format=COMPACT-DECODED&Limit=25'); */ $out = 'GET /RETS/Search' . $query . " HTTP/1.1\r\n"; $out .= 'RETS-Version: ' . $rets_version . "\r\n"; $out .= 'Authorization: Digest username="' . $username . '", realm="' . $mlsid . '", nonce="' . $nonce . '", uri="/RETS/Search", cnonce="' . $cnonce . '", nc=' . $nc . ', qop="' . $qop . '", response="' . $resp . '", opaque="' . $opaque . '"' . " \r\n"; $out .= 'Host: ' . $server . ':' . $port . "\r\n"; $out .= 'Cookie: RETS-Session-ID=' . $session_id . "\r\n"; $out .= "Accept: */*\r\n"; $out .= 'User-Agent: ' . $user_agent . "\r\n"; $response = RETS_CONNECT($server, $port, $out, $show_comments, $response, $i); $prop_return = explode("\n", $response); $i = 14; $start = 1; while($prop_return[$i]) { $start = 1; $prop_array = explode("\t", $prop_return[$i]); if ($prop_array[0] == "") { if ($show_comments == "on") { echo 'Got the data...
';} $MLSNUM = $prop_array[$start++]; $PROPSUBTYPE = $prop_array[$start++]; $STREETNUM = $prop_array[$start++]; $UNITNUM = $prop_array[$start++]; $STREETDIR = $prop_array[$start++]; $STREETNAME = $prop_array[$start++]; $CITY = $prop_array[$start++]; $ZIPCODE = $prop_array[$start++]; $LISTPRICE = $prop_array[$start++]; $LISTSTATUS = $prop_array[$start++]; $REMARKS = $prop_array[$start++]; $PHOTOCOUNT = $prop_array[$start++]; $AGENTLIST = $prop_array[$start++]; $OFFICELIST = $prop_array[$start++]; $SQFTAVAIL = $prop_array[$start++]; $YEARBUILT = $prop_array[$start++]; $SCHOOLDISTRICT = $prop_array[$start++]; $SUBDIVISION = $prop_array[$start++]; $STYLE = $prop_array[$start++]; $BEDS = $prop_array[$start++]; $BATHSFULL = $prop_array[$start++]; $BATHSHALF = $prop_array[$start++]; echo "$prop_array[0] MLS# " . $MLSNUM . "
\n" . $STREETNUM . " " . $UNITNUM . " " . $STREETDIR . " " . $STREETNAME . ", " . $CITY . ", " . $ZIPCODE . "
\nBEDS: " . $BEDS . " , BATHS: " . $BATHSFULL . "/" . $BATHSHALF . "
\nPRICE $" . $LISTPRICE . "
\nSQFT: " . $SQFTAVAIL. "
YEAR BUILT: " . $YEARBUILT . "
SCHOOLDISTRICT: " . $SCHOOLDISTRICT . "
\nSUBDIVISION: " . $SUBDIVISION . "
STYLE: " . $STYLE . "
\n"; } $i++; } $date = date("Y-m-d G:i:s"); ?>