0

Hi all,

I'm trying to create a curl script that will query a remote server using php/cURL via a form submission.

- submit a form with two values (member id, postcode)
- 1 value is only numerical, postcode is alphanumeric
- if a result is found then display that NUMERICAL number on screen
- if no result then ++ add 1 to the starting member id string value and keep looping and submitting until a result is found
- the site also juses jsessionid?????

If no member match it will still go to result page but display Your search did not find anything. You have to manually (normally) click back to go back and enter different number.

I've created the following but doesn't work. any ideas how i could get it working?

<?php

   //create array of data to be posted
   $memberRef = 8372063;
   $postcode = 'N12+5qz';
   //create array of data to be posted
   $post_data['search.memberRef '] = $memberRef ;
   $post_data['search.postcode'] = $postcode;
   $post_data['search.searchT'] = '7';
   $post_data['search.searchS'] = '';   
   $post_data['Submit'] = 'Next';
   
   //traverse array and prepare data for posting (key1=value1)
   foreach ( $post_data as $key => $value) {
      $post_items[] = $key . '=' . $value;
   }
   
   //create the final string to be posted using implode()
   $post_string = implode ('&', $post_items);
   
   //create cURL connection
   $curl_connection = 
     curl_init('http://www.membersitename.com/search.do');
   
   //set options
   curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
   curl_setopt($curl_connection, CURLOPT_USERAGENT, 
     "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
   curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
   curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
   
   //set data to be posted
   curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
   
   //perform our request
   $result = curl_exec($curl_connection);
   
   //show information regarding the request
   print_r(curl_getinfo($curl_connection));
   echo curl_errno($curl_connection) . '-' . 
               curl_error($curl_connection);
   
   //close the connection
   curl_close($curl_connection);
echo $result;   
?>
2
Contributors
1
Reply
2
Views
7 Years
Discussion Span
Last Post by network18
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.