Foros del Web » Programando para Internet » PHP »

Ejecutar URL sin abrirla [PHP]

Estas en el tema de Ejecutar URL sin abrirla [PHP] en el foro de PHP en Foros del Web. Hola compañeros del foro, mi problema es el siguiente, a ver si alguien es capaz de ayudarme. Tengo una web que cada vez que la ...
  #1 (permalink)  
Antiguo 10/11/2011, 09:53
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Ejecutar URL sin abrirla [PHP]

Hola compañeros del foro, mi problema es el siguiente, a ver si alguien es capaz de ayudarme.

Tengo una web que cada vez que la ejecuto simplemente devuelve SI/NO según sea lo que ha sucedido.

Yo lo que quiero es poder guardar el resultado de la ejecución de dicha web en una variable, para luego poder hacer comprobaciones. Me explico:

Imagina que mi web es www.ejemplo.com y cada vez que la pongo en el navegador, me devuelve, SI o NO, segun el caso. No hace nada mas que sacar por pantalla el resultado, el cual me gustaría poder almacenar en una variable.

Me interesaría poder guardar ese resultado en una variable. Algo así como:

Código PHP:
//es un ejemplo
$resultado ejecutar_en_navegador("www.ejemplo.com");

//en caso de que funcionara lo que intento hacer, hariamos lo siguiente:

if ($resultado == SI)
     echo (
"El resultado ha sido correcto");
     
// hacer algo
else
     echo (
"Fallo en la ejecucion");
     
// hacer algo

// como digo, se trata de un ejemplo, 
No tengo ni idea de por donde empezar, he leído algo sobre usar curl pero tampoco me aclaro mucho.

Alguna sugerencia? Espero alguna ayudita , gracias ;)
  #2 (permalink)  
Antiguo 10/11/2011, 09:55
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Ejecutar URL sin abrirla [PHP]

programa un bash que lo ejecute periódicamente en el servidor, como tarea programada (cron job)
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 10/11/2011, 10:35
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Pregunta Respuesta: Ejecutar URL sin abrirla [PHP]

Cita:
Iniciado por maycolalvarez Ver Mensaje
programa un bash que lo ejecute periódicamente en el servidor, como tarea programada (cron job)
mm maycolalvarez, gracias, pero no es eso lo que necesito.

Necesito guardar el contenido que devuelve la ejecución de la pagina.
Como bien dije antes es un ejemplo, en el que digo que devuelve SI o NO. Lo puse así por que quería que fuese mas fácil de entender, para hacer mas fácil la comprensión, ya que el resultado que devuelve la ejecución de mi página (real) es mas complejo.

De todas formas, gracias.
  #4 (permalink)  
Antiguo 10/11/2011, 10:44
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Ejecutar URL sin abrirla [PHP]

dices que te imprime en pantalla el resultado

imagino que esto tiene que ver con la función

Código PHP:
Ver original
  1. ejecutar_en_navegador();

lo que hace es un echo

deberias cambiarlo por return.

de este modo si haces esto:

Código PHP:
Ver original
  1. $resultado = ejecutar_en_navegador("www.ejemplo.com");

se guardará el resultado en la variable.

incluso puedes poner el resultado directo en la funcion

Código PHP:
Ver original
  1. function ejecutar($url){
  2.     trim($url);
  3.     return $url
  4. }

por poner un ejemplo y asi

podrias hacer un if directo

Código PHP:
Ver original
  1. if(ejecutar($url) == etc.){
  2.     //lo que haria
  3. }

espero haberte entendido
  #5 (permalink)  
Antiguo 10/11/2011, 11:30
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 11 meses
Puntos: 56
Respuesta: Ejecutar URL sin abrirla [PHP]

No se si te entendi bien

Código PHP:
Ver original
  1. if ($resultado == SI)
  2.      echo $correcto="El resultado ha sido correcto";
  3.      // hacer algo
  4. else
  5.      echo $fallo="Fallo en la ejecucion";
  6.      // hacer algo

Eso es lo que quieres que el resultado lo almacenes en una variable?.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #6 (permalink)  
Antiguo 10/11/2011, 11:32
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Respuesta: Ejecutar URL sin abrirla [PHP]

#memoadian, Creo que no me expliqué bien.

Lo que pretendo hacer es eso, que se ejecute.

El ejemplo que puse, ejecutar_en_navegador();, es solo un ejemplo, no esta implementado, ni codificado, es lo que quiero conseguir.

Es decir, yo no tengo nada, mas que el Link que quiero ejecutar (no se si ejecutar está bien dicho)

Me entiendes ahora?

Yo tengo mi link: www.ejemplo.com y quiero que "haciendo" algo con alguna función de php poder hacer eso que te estoy diciendo.

Me he fijado creyendo que me había explicado bien, pero trim solo te quita los espacios en blanco, (creía que era la función que necesitaba)
  #7 (permalink)  
Antiguo 10/11/2011, 11:34
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Respuesta: Ejecutar URL sin abrirla [PHP]

Cita:
Iniciado por CesarHC Ver Mensaje
No se si te entendi bien

Código PHP:
Ver original
  1. if ($resultado == SI)
  2.      echo $correcto="El resultado ha sido correcto";
  3.      // hacer algo
  4. else
  5.      echo $fallo="Fallo en la ejecucion";
  6.      // hacer algo

Eso es lo que quieres que el resultado lo almacenes en una variable?.
No es exactamente lo que quiero, lo que me interesa, es crear/usar (en caso de que exista) una función para guardar el resultado.
  #8 (permalink)  
Antiguo 10/11/2011, 11:51
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Respuesta: Ejecutar URL sin abrirla [PHP]

A ver si ahora se me entiende:

Yo tengo este link
Código:
http://zpag.es/api/dd6835a6c8b70d195ae6a4d792dbf123/uid/22653/domain/zpag.es/z_t/pa/url/http://www.google.com
Cada vez que lo abres en el navegador, te devuelve un link comprimido del formato siguiente > http://zpag.es/xxxxx , en este caso el link que genera es: http://zpag.es/8em0 , y esto es lo que yo quiero guardar. Esta dirección que genera.

Si pruebas el link acortardo veras que te redirige a la pagina de www.google.com

Se entiende ahora?

Espero haberme explicado con mas claridad esta vez.

PD: es el API de Zpag.es
  #9 (permalink)  
Antiguo 10/11/2011, 11:57
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años
Puntos: 11
Respuesta: Ejecutar URL sin abrirla [PHP]

Aya facil con CURL o la funcion file_get_contents.
Aki en la web hay aportes sobre como obtener el resultado con CURL
http://www.forosdelweb.com/f18/aport...equest-724214/
  #10 (permalink)  
Antiguo 10/11/2011, 11:58
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
De acuerdo Conseguido !

Cita:
Iniciado por experimenta Ver Mensaje
Aya facil con CURL o la funcion file_get_contents.
Aki en la web hay aportes sobre como obtener el resultado con CURL
[URL="http://www.forosdelweb.com/f18/aporte-file_get_contents-curl-http_request-724214/"]http://www.forosdelweb.com/f18/aporte-file_get_contents-curl-http_request-724214/[/URL]
Hola, muchas gracias, parece que es esto lo que yo necesito!

Voy a probar y ahora comento que tal va la cosa.

Saludos a todos y gracias por el interés ;)

EDITO: Bueno, gracias a tod@s, al final he conseguido lo que necesitaba.

Código PHP:

  $page 
file_get_contents('http://zpag.es/api/dd6835a6c8b70d195ae6a4d792dbf123/uid/22653/domain/zpag.es/z_t/pa/url/http://www.google.com');
  echo 
$page
Funciona! ;)

Última edición por baumann; 10/11/2011 a las 12:16
  #11 (permalink)  
Antiguo 10/11/2011, 12:17
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Ejecutar URL sin abrirla [PHP]

Pues si la verdad que no te explicaste por que no deices en base a que te devuelve el resultado y tampoco dices si hay una funcion o que se yo.

para abrir una url

lo más simple es usar

Código PHP:
Ver original
  1. $page = file_get_contents('mipaginaejemplo.com');

con esto ya podemos tratar a $page como cualquier variable

si por ejemplo quieres buscar el resultado y suponiendo que este entre las etiquetas
Código HTML:
Ver original
  1. <span>Aqui va si o no</span>

Código PHP:
Ver original
  1. $parser = '|<span>(.*?)</span>|is';
  2.     if (preg_match($parser, $page, $res1))
  3.     {
  4.            $res = $res1[1];
  5.     }

si hacemos un echo a $res debiera devolverte SI o NO o el contenido de span :)
  #12 (permalink)  
Antiguo 10/11/2011, 13:08
Avatar de baumann  
Fecha de Ingreso: mayo-2011
Ubicación: Madrid
Mensajes: 33
Antigüedad: 13 años
Puntos: 0
Respuesta: Ejecutar URL sin abrirla [PHP]

#memoadian , disculpa el no haberme explicado bien desde el principio.

Ahora ya lo tengo solucionado.
De todas formas gracias por el interés y el tiempo "robado" (a tod@s).

Saludos.

Por mi parte el tema puede cerrarse.

Etiquetas: url, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:28.