Foros del Web » Programando para Internet » PHP »

Como puedo saber si una web esta online

Estas en el tema de Como puedo saber si una web esta online en el foro de PHP en Foros del Web. Hola me he encontrado un codigo en php que me determina si un enlce esta online, el codigo el el siguiente: estado.php <? $vivo = ...
  #1 (permalink)  
Antiguo 09/10/2005, 21:58
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
Como puedo saber si una web esta online

Hola me he encontrado un codigo en php que me determina si un enlce esta online, el codigo el el siguiente:

estado.php

<?
$vivo = "verde.gif";
$muerto = "rojo.gif";

$enlinea = fopen("$enlace", "r");
if (!$enlinea){
header("Location: $muerto");
}
else {
header("Location: $vivo");
}
fclose($enlinea);
?>

y en una pagina coloco una imagen y en el src de la imagen

pagina.php

<img src"estado.php?enlace=http://www.google.com">

esto no me funciona, es decir no me muestra la imagen, alguien me puede decir cual es el problema o me dan alguna sugerencia o me ayudan con un nuevo codigo
Nota: Las imagenes y las paginas estan en un mismo directorio claro esta.
Saludos
__________________
syron :cool:
  #2 (permalink)  
Antiguo 09/10/2005, 22:53
Avatar de tranceup  
Fecha de Ingreso: abril-2004
Ubicación: Buenos AIres
Mensajes: 290
Antigüedad: 20 años
Puntos: 0
Yo recien estoy aprendiendo php mucho no te puedo decir , lo unico que si se es que las imagenes no las ves por que no las estas mostrando por pantalla en ningun momento echo "<img src='verde.gif' border='0' />.

Salu2.
__________________
Diseño y desarrollo Web - Templates Wordpress - Posicionamiento SEO -
Programaciones en PHP, AJAX, MYSQL a medida -
Tranceup http://www.tranceup.net
  #3 (permalink)  
Antiguo 09/10/2005, 23:04
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
Las src de las imagenes

Hola gracias por tu ayuda pero lo que incluyo el el src de las imagenes es el parametro que debe tomar para que muestre la imagen, ademas debo aclarar que si la URL que le paso de parametro existe entonces si me muestra la imagen que corresponde pero en caso que no exista no me muestra la imagen, ese es el error.

Saludos Alain
__________________
syron :cool:
  #4 (permalink)  
Antiguo 10/10/2005, 00:24
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
... si dices que pasa cuando no existe la imágen quiere decir que fopen() falló y por lo tanto envia un mesaje de error lo cuál impide que se ejecute la función header(); tendrías una salida a el navegador...

Si es cierto eso, bastaría con anteponer un '@' a fopen() para evitar así te regrese el mensaje...

Ahora, como comentarios extras:
- Usa $_GET para recibir la variable "enlace".
- Coloca un "exit" después de cada header()
- Te sugeriría cambiar la metodología... el llamar a un archivo externo (el que verifica la existencia del enlace) significa más trabajo, además de que por ocupar header() no se ejecuta el fclose()... ¿por qué no colocas una función dentro del mismo archivo que solo te imprima el nombre de la imágen??, algo como lo que viene en las FAQ, considero es lo más óptimo:
Código PHP:
<?php
function check_url($enlace) {
    if (!@
fopen($enlace"r"))
            echo 
"rojo.gif";
        else
            echo 
"verde.gif";
    @
fclose($enlace);
}
?>

<img src="<?php check_url("http://www.google.com"?>">
<img src="<?php check_url("http://www.espero_no_exista_esto.com"?>">
... ... si sí es problema del "@" ¿el código que encontraste no lo tenía????? .

Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 10/10/2005 a las 00:33
  #5 (permalink)  
Antiguo 10/10/2005, 01:02
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
Sonrisa Gracias problema resuelto

Gracias jam, parece que era problema de la '@' se me habia olvidado eso, gracias amigo, ya funciona bien, ahh ya habia pensado en la el uso de una funcion asi como explicas, de todas maneras muchas gracias.

Saludos cordiales Alain
__________________
syron :cool:
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 01:46.