2016-11-02 16 views
1

Ich habe eine Frage an Sie. Ich habe diesen Code:Formular mit Formular senden nach cell php

 $postData2 = array( 
     'From'=>'20/10/2016', 
     'To' =>'30/10/2016' 
    ); 

     $postData = array( 
     'User' =>'Sebastian', 
     'Password' =>'12345' 
    ); 

//1.- login... 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, 'https://web.com/login.php'); 
    curl_setopt($ch, CURLOPT_COOKIESESSION, true); 
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); 
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); 
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); 
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-CL; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"); 
    curl_exec ($ch); 

    //2.- send dates... 
    curl_setopt($ch, CURLOPT_URL, 'https://web.com/askdates.php'); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData2); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_exec ($ch); 

    //3.- answer... 
    curl_setopt($ch, CURLOPT_URL, 'https://web.com/answer.php'); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-CL; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"); 
    $page=curl_exec($ch); 

    curl_close($ch); 
    echo $page; 

Der erste Schritt ist ok .. die Anmeldung ist richtig. Ich denke, der zweite Schritt ist in Ordnung, aber die Antwort für diese zweite Form wird in https://web.com/answer.php gezeigt, so schrieb ich die 3 Schritt ... Aber ich sehe nur https://web.com/answer.php ohne Post-Informationen.

Was muss ich tun, um dies zu korrigieren?

PS: Zuerst schrieb ich die zwei ersten Schritte, aber die Antwort war negativ. Danke!

Antwort

0

Ich bin mir nicht sicher, ob ich Ihre Frage genau verstehen, aber wenn Ihr versucht, dies mehrere curl Anfragen zur gleichen Zeit zu senden ist, wie:

<?php 
// create both cURL resources 
$ch1 = curl_init(); 
$ch2 = curl_init(); 

// set URL and other appropriate options 
curl_setopt($ch1, CURLOPT_URL, "http://lxr.php.net/"); 
curl_setopt($ch1, CURLOPT_HEADER, 0); 
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/"); 
curl_setopt($ch2, CURLOPT_HEADER, 0); 

//create the multiple cURL handle 
$mh = curl_multi_init(); 

//add the two handles 
curl_multi_add_handle($mh,$ch1); 
curl_multi_add_handle($mh,$ch2); 

$active = null; 
//execute the handles 
do { 
    $mrc = curl_multi_exec($mh, $active); 
} while ($mrc == CURLM_CALL_MULTI_PERFORM); 

while ($active && $mrc == CURLM_OK) { 
    if (curl_multi_select($mh) != -1) { 
     do { 
      $mrc = curl_multi_exec($mh, $active); 
     } while ($mrc == CURLM_CALL_MULTI_PERFORM); 
    } 
} 

//close the handles 
curl_multi_remove_handle($mh, $ch1); 
curl_multi_remove_handle($mh, $ch2); 
curl_multi_close($mh); 

?> 

Also im Grunde jede einzelne Anfrage erstellen, aber nicht ausführen sie verwenden dann noch curl_multi_init(), um die Anfragen zusammen in eins zu verbinden, danach auszuführen.

Wenn Sie weitere Einzelheiten über wollen, wie haben hier ein weiter lesen: http://php.net/curl_multi_init

+0

Ich versuchte dies aber ich glaube, ich habe nicht die Anforderungen zusammen in einer beitreten, weil ich zuerst anmelden müssen und dann kann ich für einen Blick Film in den spezifischen Daten. Danke für deine Antwort! jemand weiß, wie man sich zuerst anmeldet und dann nach einem Film sucht und diese Information bekommt ?? – Sebastian

+0

create 2 functions() eine für die Anmeldung $ login = curl_init(); und eine für $ grabing = curl_init() – EaBangalore

+0

Ein bisschen wie EaBangalore sagte create 2 Funktionen eine für die Anmeldung und eine für die Grabbing dann erhalten Sie die Antwort von der Anmeldung Funktion, um zu sehen, ob es die Tests besteht, wenn Sie mit dem Grabbing weitermachen Funktion, ich bin kein Pro PHP Typ, aber das ist, wie ich es tun würde. – jtsalva