MerlinSB1
-
Posts
2 -
Joined
-
Last visited
Never
Posts posted by MerlinSB1
-
-
Hi,
I have used cURL to login in to a site and successful passed and stored the cookie, but I can't get it to submit a form on another page. When I echo the result it is just blank - although I can retrieve other pages fine.
I think the page is trying to redirect, which is fine I just want to see if it has submitted or not! In case its useful the form is self referencing and was built using MOOJ Proforms (by some one else).
Any ideas?
$post_data['m4j-180'] = 'Yes'; $post_data['m4j-181'] = 'No'; $post_data['m4j-182'] = 'Yes'; $post_data['m4j-170'] = 'This is a test'; $post_data['submit'] = 'send'; //turn key pairs into strings and combine them (key1=value1&key2=value2) foreach ($post_data as $key => $value) { $post_items[] = $key . '=' . $value; } $post_string = implode ('&', $post_items); //Open connection -- address is the "action" setting of the form $curl_connection = curl_init('http://www.testsite.com/index.php?option=com_proforms&jid=6&cid=-1&Itemid=54'); //Set connection options //Set connection to timeout after 30 secs so script doesn't hang curl_setopt($curl_connection, CURLOPT_CONNCTTIMEOUT, 180); //Tell destination URL to output browser content not mobile etc curl_setopt($curl_connection, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"); //Tells curl to out results as string not as a display curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true); //false below means no error will trigger if SSL not signed or out of date curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false); //follow location redirects in header of destination file curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, true); //tell curl which string to post curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string); //execute the post $result = curl_exec($curl_connection); //see any errors that might have happened print_r(curl_getinfo($curl_connection)); //see the error number and description echo curl_errno($curl_connection) . '-' . curl_error($curl_connection); //close connection curl_close($curl_connection); echo $result
cURL Error
in PHP Coding Help
Posted
Thanks both - solved it.