2009-12-30 7 views
0

Ceci est mon code:Connexion à un forum PHP en utilisant lib-cURL et d'obtenir un contenu de la page

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://www.membersite.com/login.php"); 
curl_setopt ($ch, CURLOPT_POST, 1); 
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'username=deleted&password=deleted'); 
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'C:\xampp\htdocs\scrape\cookie.txt'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

$store = curl_exec ($ch); 

curl_setopt($ch, CURLOPT_URL, "http://www.membersite.com/memberlist.php"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

$page = curl_exec ($ch); 

echo $page; 

curl_close($ch); 

Mais je ne pense pas que ça se connecter avec succès que le site (le mien, par la voie) ne montre pas un journal de ma connexion. Je sais que le nom d'utilisateur et le mot de passe sont corrects, tout comme les URL. Je récupère un fichier cookie.txt avec ce qui ressemble à de bonnes données mais je ne suis pas sûr.

Si je tente un certain débogage de base, comme ceci:

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://www.membersite.com/login.php"); 
curl_setopt ($ch, CURLOPT_POST, 1); 
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'username=deleted&password=deleted'); 
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'C:\xampp\htdocs\scrape\cookie.txt'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

if(!$store = curl_exec($ch)) 
{ 
    echo "login fail"; 
} 

curl_setopt($ch, CURLOPT_URL, "http://www.membersite.com/memberlist.php"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

if(!$page = curl_exec($ch)) 
{ 
    echo "page fail"; 
} 

echo $page; 

curl_close($ch); 

je reçois une « page fail » en cours d'impression à la page, donc je suppose que l'exploitation forestière en ne fonctionne pas.

Une aide? Merci.

+0

spammer un forum, hein? – dusoft

+0

Je l'aime quand les gens supposent que vous construisez quelque chose de malicieusement. Non, je ne le suis pas. Si vous ne pouvez pas fournir d'aide, veuillez ne pas répondre. – Matt

Répondre

0

Nevermind, téléchargé une bibliothèque phpBB cURL et l'a triée.

0

Ajoutez l'option CURLOPT_COOKIEFILE avec la même valeur que l'option CURLOPT_COOKIEJAR.

Vous devez également utiliser ces deux options pour chaque requête suivante (c'est-à-dire votre requête pour memberlist.php).

Vous pouvez voir un moyen de le faire here.