Bon, vu que personne n'a de temps à perdre sauf moi, j'ai réalisé un script de connexion, et je te laisserais faire ton récupérateur de rapport d'attaque.
Mon script te permet de récupérer le code source de la page d'index du jeu quand tu es connecté.
Expliquons ce que le jeu fait :
- Toutes les 5 secondes, une requête Ajax est envoyée vers
logs.php?rand=0.[nbalea].
OSEF- A chaque mouvement de la souris, les champs input de type hidden
xgp et
ygp prennent la position de la souris par rapport au coin haut gauche de la PAGE
OSEF- Quand on clique sur connexion, une page (
gp.php) est chargée avec Ajax avec en données get le login, le serveur de jeu, xgp et ygp, mais elle n'est pas indispensable à la connexion
OSEF- A l'envoi du formulaire, les variables envoyées sont : login, password, server, x et y (positions par rapport au coin haut gauche de l'image de connexion) donc 1 et 1 devraient suffire ^^
Ensuite, on récupère le PHPSESSID qui nous est attribué, et on continue vers game.php sur le serveur s1 ou s2 au choix.
D'après ce que tu nous a dit, tu es sur le 2, donc voici le script approprié, pour un usage en CLI, avec CUrl :
<?php
dl("php_curl.dll");
function post($url,$post)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
return curl_exec($ch);
}
function get($url,$cookie="")
{
$nbs = curl_init();
curl_setopt($nbs, CURLOPT_URL, $url);
curl_setopt($nbs, CURLOPT_HEADER, 0);
curl_setopt($nbs, CURLOPT_COOKIE, $cookie);
curl_setopt($nbs, CURLOPT_RETURNTRANSFER, 1);
return curl_exec($nbs);
}
$login_page = post("http://s2.worldofstargate.fr/login.php","login=ton_logion&password=ton_password&x=1&y=1&server=2");
list($header,$page) = explode("Content-Type: text/html; charset=ISO-8859-1",$login_page);
$h_tab = explode("\r\n",$header);
foreach($h_tab as $header)
{
if(preg_match("/^Set-Cookie/i",$header))
{
preg_match("/Set-Cookie: PHPSESSID=(.+); path=/i",$header,$out);
$phpsessid = $out[1];
}
}
$page_de_jeu = get("http://s2.worldofstargate.fr/game.php","PHPSESSID=$phpsessid");
?>