Menú Principal

sockets

Iniciado por Og., 23 Agosto 2009, 06:55 AM

0 Miembros y 1 Visitante están viendo este tema.

Og.

Bueno, el problema es el siguiente:
hay una pagina en internet, la llamaremos "http://ejemplo.com", cuando entras a esta pagina esta genera una session, lo que quiero hacer es que con sockets mi php abra una conexion, reciba la cookie(el PHPSESSID), despues la use para loguearse y que el php reciba, guarde y muestre la informacion, no tengo idea de uso de sockets, agradeceria un codigo de ejemplo o cualquier manual que me pueda ayudar a entender el funcionamiento de estos.

Saludos!  :D
|-

Nakp

sockets necesariamente? por ahi andan bots de whk con curl que es mucho mas facil para el manejo de cookies
Ojo por ojo, y el mundo acabará ciego.

WHK

Código (php) [Seleccionar]
<?php
$buffer 
'GET / HTTP/1.1
Host: foro.elhacker.net
Connection: close
User-Agent: agente de usuario 0.00001 beta alpha rc (huevo)
Referer: www.coolmod.com

'
;

if(!
$handle fsockopen('foro.elhacker.net'80))
 die(
'El servidor no responde!');
if(!
fwrite($handle$buffer))
 die(
'Error en el servidor!');
unset(
$buffer);
while(!
feof($handle)){
 
$buffer .= fgets($handle128);
}
fclose($handle);
if(!
$buffer)
 die(
'El servidor no responde!');

if(
is_array($cookies desde_hasta('Set-Cookie: '';'$bufferfalsetrue))){
 foreach(
$cookies as $numero => $cookie){
  if(
eregi('phpsessid='$cookie)){
   
$phpsessid $cookie.'; ';
  }else{
   
$retorno .= $cookie.'; ';
  }
  unset(
$cookie); unset($numero);
 }
 unset(
$cookies);
 echo 
htmlspecialchars('Cookies: '.$retorno.$phpsessidENT_QUOTES);
}else{
 die(
'Imposible obtener los datos!');
}

function 
desde_hasta($desde$hasta$contenido$cantidad false$retornar_todo false){
 if(
eregi($desde ,$contenido)){
  
$retorno explode($desde$contenido);
  foreach(
$retorno as $compara){
   
$compara explode($hasta$compara);
   if(
$compara $compara[0])
    
$retorna[] = $compara;
   unset(
$compara);
  }
  if(
$retornar_todo){
   unset(
$retorna[0]);
   return 
$retorna;
  }
  if(
is_numeric($cantidad)){
   
$retorno $retorna[$cantidad];
  }else{
   
$retorno $retorna[1];
  }
  return 
$retorno;
 }else{
  return 
false;
 }
}
?>