αντιμερωπίζω ένα πρόβλημα καθώς προσπαθώ να στείλω με curl (σε php) τα post data που όμως αντι για submit κάνει κλήση σε μία συνάρτηση javascript...
το site ειναι το
http://www.sj.se/travel/booksearchlocation.form
Code: Select all
<?php
$curl_connection =
curl_init('http://www.sj.se/travel/booksearchlocation.form');
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);
curl_setopt($curl_connection, CURLINFO_HEADER_OUT, true);
//$post_data['firstName'] = 'Name';
//$post_data['action'] = 'Register';
curl_setopt ($curl_connection, CURLOPT_POST, 1);
//taken from captured actual POST
// method:next
// startPage:true
// mode:teaser
// travelQuery.departureLocationName:Reftele
// travelQuery.arrivalLocationName:Reimersholme
// travelQuery.outDateTime:2012-02-20+22%3A31%3A00
// travelQuery.outTimeDeparture:true
// travelQuery.returnDateTime:
// travelQuery.returnTimeDeparture:false
// travelQuery.includeX2000:on
// travelQuery.includeBuses:on
// travelQuery.viaLocationName:
// travelQuery.minimumChangeTime:0
$post_data['travelQuery.departureLocationName'] = 'Reftele';
$post_data['travelQuery.arrivalLocationName'] = 'Reimersholme';
$post_data['travelQuery.outDateTime'] = '2012-02-20+22%3A31%3A00';
$post_data['method'] = 'next';
$post_data['startPage'] = 'true';
$post_data['mode'] = 'teaser';
$post_data['travelQuery.outTimeDeparture'] = 'true';
$post_data['travelQuery.returnTimeDeparture'] = 'false';
$post_data['travelQuery.includeX2000'] = 'on';
$post_data['travelQuery.includeBuses'] = 'on';
$post_data['travelQuery.minimumChangeTime'] = '0';
$post_data['travelQuery.returnDateTime'] = '';
$post_data['travelQuery.viaLocationName'] = '';
foreach ( $post_data as $key => $value)
{
$post_items[] = $key . '=' . $value;
}
$post_string = implode ('&', $post_items);
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
$result = curl_exec($curl_connection);
curl_close($curl_connection);
//echo $result;
print_r(curl_getinfo($curl_connection));
echo curl_error($curl_connection);
?>
και με inspect element πανω στο continue βλεπουμε πως καλει την submitTravelQueryForm, την οποια ολως περιεργως δεν μπορω να καλεσω εγω αλλά ουτε καν να βρω!
<button id="submitButton" class="to_right" type="button" onclick="return submitTravelQueryForm('next', true)">CONTINUE >></button>
Καμία ιδέα για το πως μπορώ να στείλω τα post data αυτα μέσω php?