Bueno, el problema es el siguiente.
Necesito que un script explote los datos de una pagina, pero la pagina esta protegida con un usuario y contraseña.
Bueno, el usuario y contraseña los conozco, pero lo que me faltaria seria la rutina del login.
Por ahora lo que tengo es:
Código PHP:
<?
$pathdata = "paginaconlosdatos.php";
$pathlogin = "index.php?op=search_account&login_username=miusername&login_password=mipassword";
function exploit_data($path) {
$file = file($path, "r");
$line = 854;
$i = 0;
while(strpos($file[$line]!==false,"<tr")) {
for($j=0;$j<6;$j++) {
$val[$i][$j] = trim(ereg_replace("<td.*>(.+)</td>","\\1",$file[$line+$j+1]));
}
$line += 14;
$i++;
}
return $val;
}
function bot_login() {
fopen($pathlogin,"r");
}
$file = file_get_contents($pathdata);
if (strpos($file,"Ingrese el nombre de usuario y contraseña que eligio al realizar su compra")!==false) {
echo "not logged ";
bot_login();
echo "login attemp #1 ";
}
$val = exploit_data($pathdata);
var_dump($val);
Pero obviamente, devuelve NULL, el problema esta que cuando entro a la pagina $pathdata; si no estoy logueado se redirecciona a una pagina de logueo. Esta a su vez, manda todos los datos a $pathdata, obviamente el formulario de logueo usa metodo POST, pero el servidor esta configurado con register_globals=on y ademas permite resetear superglobales desde una URL (si, esta muy mal configurado, pero yo no manejo eso).
Asi que cuando llamo a exploit_data() me redirecciona a la pagina de logueo, porque el bot_login() no funciono.. obviamente al parecer hacer un fopen() logueando el usuario, no resuelve las cosas.. me gustaria saber cual es la manera de hacer un login automatico.
Aclaro nuevamente, que si yo pongo a $pathlogin en mi browser loguea bien, y me redirecciona al final a una pagina index de cuando se loguea correctamente.