IA-64
03-11-2010, 09:55
cia a tutti volevo sottoporvi un problema che mi sta facendo uscire pazzo
mi servirebbe di fare un'autenticazione automatica ad un sito per poi scaricare dei documenti
avevo pensato di raggiungere lo scopo tramite il supporto a cURL di PHP
il codice che ho scrittoè questo:
<?php
$url = 'http://opfor.forumfree.it/?act=Login&CODE=00';
$data = array('UserName' => urlencode("mionomeutente"),
'PassWord' => urlencode("miapassword"),
'submit' => urlencode("Entra nel sito")
);
$useragent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; it; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
//curl_setopt($ch, CURLOPT_ENCODING , "gzip,deflate");
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_exec($ch);
//DEBUG MODE
/*
print "<pre>\n";
print_r(curl_getinfo($ch));
print "</pre>\n";
echo "\n\ncURL error number:" .curl_errno($ch); // print error info
echo "\n\ncURL error:" . curl_error($ch);
print "</pre>\n";
*/
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, 'http://opfor.forumfree.it/');
curl_exec($ch);
curl_close ($ch);
?>
viene eseguito senza nessun tipo di errore ne PHP ne nel cURL
ma la pagina rimane bianca...PERCHE????
il tutto gira su un server aruba con
PHP 5.2.14
cURL abilitato
CURL Info--> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
grazie in anticipo a chiunque mi possa essere d'aiuto :D
mi servirebbe di fare un'autenticazione automatica ad un sito per poi scaricare dei documenti
avevo pensato di raggiungere lo scopo tramite il supporto a cURL di PHP
il codice che ho scrittoè questo:
<?php
$url = 'http://opfor.forumfree.it/?act=Login&CODE=00';
$data = array('UserName' => urlencode("mionomeutente"),
'PassWord' => urlencode("miapassword"),
'submit' => urlencode("Entra nel sito")
);
$useragent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; it; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
//curl_setopt($ch, CURLOPT_ENCODING , "gzip,deflate");
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_exec($ch);
//DEBUG MODE
/*
print "<pre>\n";
print_r(curl_getinfo($ch));
print "</pre>\n";
echo "\n\ncURL error number:" .curl_errno($ch); // print error info
echo "\n\ncURL error:" . curl_error($ch);
print "</pre>\n";
*/
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, 'http://opfor.forumfree.it/');
curl_exec($ch);
curl_close ($ch);
?>
viene eseguito senza nessun tipo di errore ne PHP ne nel cURL
ma la pagina rimane bianca...PERCHE????
il tutto gira su un server aruba con
PHP 5.2.14
cURL abilitato
CURL Info--> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
grazie in anticipo a chiunque mi possa essere d'aiuto :D