Per chi volesse interagire con Facebook riporto qui una parte di codice utile a effettuare il login, date l'email e la password dell'account, usando il comando "curl".
<?php /* Inserie lemail e la password */ $EMAIL = ""; $PASSWORD = ""; function cURL($url, $header=NULL, $cookie=NULL, $p=NULL) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, $header); curl_setopt($ch, CURLOPT_NOBODY, $header); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // -> https curl_setopt($ch, CURLOPT_COOKIE, $cookie); curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // -> https curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); if ($p) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $p); } $result = curl_exec($ch); if ($result) { return $result; } else { return curl_error($ch); } curl_close($ch); } $a = cURL("https://login.facebook.com/login.php?login_attempt=1",true,null,"email=$EMAIL&pass=$PASSWORD"); preg_match('%Set-Cookie: ([^;]+);%',$a,$b); $c = cURL("https://login.facebook.com/login.php?login_attempt=1",true,$b[1],"email=$EMAIL&pass=$PASSWORD"); preg_match_all('%Set-Cookie: ([^;]+);%',$c,$d); for($i=0;$i<count($d[0]);$i++) $cookie.=$d[1][$i].";"; /* Ora che i cookies sono sistemati è possibile usare il proprio account di facebook aprendo un altro url e aggiungendo i comandi necessari come ultimo parametro. */ echo cURL("http://www.facebook.com/",null,$cookie,null); ?>
l'ultima riga mostrerà sono il contenuto della pagina di Home di facebook, ma se lo scopo era di verificare la correttezza delle credenziali, basterà verificare che nel cookie creato vi sia specificato lo userid, e quindi la stringa "user".
$pos = strrpos($cookie, "user"); if ($pos === false) { echo 'Access Denied'; } else { echo 'Access Granted'; }







Commenti
RSS feed dei commenti di questo post.