Jump to content

Login Remoto Al Back Office Tramite Curl


gmorpheus

Recommended Posts

Salve a tutti,

ho un grosso grattacapo nel realizzare uno script che mi dovrebbe permettere di accedere in automatico al back office, in sostanza dovrei accedere, andare in una tab qualunque e prendere i dati che mi servono (es: nuovi ordini).

 

Tutto questo attraverso l'uso delle funzioni curl di php. Posto lo script:

/*
$location = "http://192.168.200.101/shop/gestione/login.php";
$location2 = "http://192.168.200.101/shop/gestione/index.php?tab=AdminImport&token=a47fefe368fa5a8c39e707eee5996a97";*/
//CURL SESSION


$postFields = 'email='.urlencode('[email protected]').'&passwd='.urlencode('prestashop').'&Submit='.urlencode('Fai il login');

/************************************************************/
$cSession = curl_init();

//curl_setopt($cSession, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($cSession, CURLOPT_URL,$location);
curl_setopt($cSession, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.2 (KHTML, like Gecko) Ubuntu/10.10 Chromium/15.0.874.106 Chrome/15.0.874.106 Safari/535.2');
curl_setopt($cSession, CURLOPT_HEADER, 1);
curl_setopt($cSession, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cSession, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($cSession, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($cSession, CURLOPT_COOKIEJAR, '/var/www/cookies/cookied.txt');
curl_setopt($cSession, CURLOPT_COOKIEFILE, '/var/www/cookies/cookied.txt');

$cSessionResult = curl_exec($cSession);


curl_close($cSession);
unset($cSession);

 

questa prima parte serve a prendere il cookie rilasciato da login.php e conservarlo nel file specificato.

mi rilascia questo header:

 

HTTP/1.1 200 OK Date: Wed, 04 Jan 2012 14:01:35 GMT Server: Power MOD by web4host.net Set-Cookie: 0ce3beb550fcd80fa4e2751c91d13df6=ttNZdBmLlUiACSL1lXEPqyWV%2Bb3qcz5yS5cd5nkJ5tY0PtGjMtJqvjtRpqyCZi5BvXkMFIkzR9%2F%2F43QagdXksg%3D%3D000060; expires=Tue, 24-Jan-2012 14:01:35 GMT; path=/e-shop/gestione/; domain=********(modificato da me); httponly Vary: Accept-Encoding,User-Agent Content-Length: 1369 Content-Type: text/html; charset=utf-8

 

$cSession = curl_init();

curl_setopt($cSession, CURLOPT_URL,$location);
curl_setopt($cSession, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.2 (KHTML, like Gecko) Ubuntu/10.10 Chromium/15.0.874.106 Chrome/15.0.874.106 Safari/535.2');
curl_setopt($cSession, CURLOPT_HEADER, 1);
curl_setopt($cSession, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cSession, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($cSession, CURLOPT_POST, 1);
curl_setopt($cSession, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($cSession, CURLOPT_MAXREDIRS, 10);
curl_setopt($cSession, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($cSession, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt($cSession, CURLOPT_COOKIEJAR, '/var/www/cookies/cookied.txt');
curl_setopt($cSession, CURLOPT_COOKIEFILE, '/var/www/cookies/cookied.txt');

$cSessionResult = curl_exec($cSession);

curl_close($cSession);
unset($cSession);

 

questa, invece, effettua il login, il problema è che non riesco ad accedere a nessuna tab ed il risultato è una pagina bianca, mentre l'header è un redirect alla pagina index.php che è presente nella stessa cartella dello script, mentre, dovrebbe essere sul server in remoto!

 

 

Please help me!

qualcuno ha già fatto qualcosa del genere???

ah la cartella dei cookie è 777.

Link to comment
Share on other sites

  • 1 year later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...