Foros del Web » Programando para Internet » PHP »

Script

Estas en el tema de Script en el foro de PHP en Foros del Web. Hola estoy buscando un script en php que me diga si una determinada URL esta online o no. Hable con un amigo y me dijo ...
  #1 (permalink)  
Antiguo 23/02/2003, 17:39
 
Fecha de Ingreso: diciembre-2002
Ubicación: Enfrente del ordenador.
Mensajes: 18
Antigüedad: 21 años, 4 meses
Puntos: 0
Pregunta Script

Hola estoy buscando un script en php que me diga si una determinada URL esta online o no. Hable con un amigo y me dijo que podría ser algo como esto:

Código:
function checkear($url) {
  if(@fopen($url, 'r')) {
     print('online');
     return true;
  }
  else {
     print('offline');
     return false;
  }
}
Pero también me dijo que faltaba algo y como yo no tengo ni idea de php pues no se que es.. jejeje.

No se si me he explicado bien, lo que quiero es que me ponga en texto ONLINE y OFFLINE según lo que sea....

Bueno espero sus respuestas, muchas gracias.

PD: Si puede ser que la palabra OFFLINE aparezca en rojo y la de ONLINE en verde mucho mejor... jejeje aunque creo que ya es pedir demasiado xD
  #2 (permalink)  
Antiguo 23/02/2003, 19:02
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
ve esto:
<?
$up = fsockopen("www.portalmaestro.com", 80, &$errno, &$errstr, 30);
if($up)
{
echo "<div align=center><font size=2 face=Arial, Helvetica, sans-serif><a href=\"http://www.portalmaestro.com\">Portal Maestro.</a></font></div>";
}
?>

saludos.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #3 (permalink)  
Antiguo 26/02/2003, 20:47
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 3 meses
Puntos: 6
Este codigo lo agregas a una web con extension .php lo subes a un servidor que soporte logicamente php, lo que te va hacer esto es mostrarte si la pagina que elgiste en este caso www.portalmaestro.com esta online(se muestra) de lo contrario no muestra nada.

saludos.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #4 (permalink)  
Antiguo 27/02/2003, 12:36
 
Fecha de Ingreso: diciembre-2002
Ubicación: Enfrente del ordenador.
Mensajes: 18
Antigüedad: 21 años, 4 meses
Puntos: 0
Pregunta mmmmm

Hola ya puse el código pero hay un problema, exista o no la dirección no muestra nada. El código que he puesto ha sido este:

Código PHP:
<? $up fsockopen("http://www.google.com"80, &$errno, &$errstr30);
if(
$up) { echo "<a href= 'http://www.google.com'>Google</a>"; }
function 
checkear($url) { if(@fopen($url'r'))
{ print(
'online'); return true; }
else { print(
'offline'); return false; } } ?>
También he intentado hacer que aparezca la palabra "ONLINE" en verde cuando la URL exista pero me da error: Parse error: parse error, expecting `','' or `';'' in script2.php on line 3

El código es este:

Código PHP:
<? $up fsockopen("http://www.google.com"80, &$errno, &$errstr30);
if(
$up) { echo "<font color="#00FF00"><strong>ONLINE</strong></font>"; }
function checkear($url) { if(@fopen($url'r' ))
{ print(
'online'); return true; }
else { print(
'offline'); return false; } } ?>
Gracias.
  #5 (permalink)  
Antiguo 27/02/2003, 14:36
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Código PHP:
echo "<font color=\"#00FF00\"><strong>ONLINE</strong></font>"
Cunado usas comillas dentro de un echo "..." (con comillas dobles de apertura y cierre) has de usar \" o comillas simples .. Recomendable \"

Un saludo,
  #6 (permalink)  
Antiguo 01/03/2003, 08:03
 
Fecha de Ingreso: diciembre-2002
Ubicación: Enfrente del ordenador.
Mensajes: 18
Antigüedad: 21 años, 4 meses
Puntos: 0
Gracias por responder Cluster pero el codigo sigue sin funcionar, por si alguien le ve algun fallo el codigo es este:

Código PHP:
<? $up fsockopen ("http://www.google.com"80, &$errno, &$errstr30);
if(
$up) { echo "<font color=\"#00FF00\"><strong>ONLINE</strong></font>"; }
function 
checkear($url) { if(@fopen($url'r' ))
{ print(
'online'); return true; }
else { print(
'offline'); return false; } } ?>
y la direccion de la pagina donde lo e puesto es esta:

http://usuarios.lycos.es/wwweb77/script.php
  #7 (permalink)  
Antiguo 01/03/2003, 09:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
bufff .. haber empezado por donde pretendias hacer funcionar ese código .. !!!!

En Lycos tienen desactivadas un monton de funciones .. entre ellas justamente fsockopen() para el primer método y tambien tiene desactivado "wrapper" remotos ...

Mas cosas desactivadas: reporte de errores a "OFF" (osese .. no ves ni los errores que te producen tus scripts .. solo "pantalla" en blanco)

Si programas en "Lycos" te recomiendo que uses:

<?
error_reporting(E_ALL);
?>

Eso .. al principio de tus scripts .. Por lo menos en fase de desarrollo, luego si quieres se lo quitas. Con eso te mostrará PHP todos los errores y avisos que pueda presentarte.

Los ejemplos q estabas usando .. ahí tenias una función declarada pero NO la llamavas ..

El "código del test" sería:

Código PHP:
<?
error_reporting
(E_ALL);
$url1="www.google.com/";
$url2="http://www.google.com/";

// Método sockets
echo "Método sockets: ";
$up fsockopen ($url180, &$errno, &$errstr30);
if(
$up) {
  echo 
"<font color=\"#00FF00\"><strong>ONLINE</strong></font>";
}

echo 
"<br>";

// Método abrir remoto
function checkear($url) {
 if(
fopen($url'r' )){
    return 
'online';
 } else {
     return 
'offline';
 }
}


echo 
"Método abrir remoto: ".checkear($url2);

?>
Y sin @delante de funciones .. q sino menos se ven los errores que pueda producir .. Recuerda que siempre en fase de producción (hasta q no das por finalizado tu script) has de ver los errores que pudieran producirse para intentar deducir que pasa o como se podría solucionar ..

Cuando lo ejecutes ya veras (porque usé el error_reporting() ..):

En la priméra prueba:
Warning: fsockopen() has been disabled for security reasons (está descativada esa funcion .. lo puedes ver en el PHP info que dan desde tu panel de control de tu Lycos cuenta ..)

y

Warning: fopen("http://www.google.com/", "r") - No such file or directory

La razón: usan disable-url-fopen-wrapper ..

Con todo servicio gratuito de Hosting vas a tener problemas con muchassss funcioens . Para ello siempre intenta hacer un phpinfo() a tu sitio .. Ahí veras por ejemplo si hay funciones desactivadas (sobre todo si usan "safe mode" ya te daras cuenta ..)

pd:
Cuando se usa fsockopen() .. el URL ha de ser una IP o bien sin http:// o ftp:// o el protocoolo q sea .. eso ya lo "deduce" del puerto q pretendemos abrir (el 80 en este caso para HTTP) ..

fopen() si que requiere del protocoolo q sea . http:// o el que corresponda ..


Un saludo,

Última edición por Cluster; 01/03/2003 a las 09:45
  #8 (permalink)  
Antiguo 01/03/2003, 11:08
 
Fecha de Ingreso: diciembre-2002
Ubicación: Enfrente del ordenador.
Mensajes: 18
Antigüedad: 21 años, 4 meses
Puntos: 0
De acuerdo

Intentaré buscarme un host privado o alguno que no me limite tantas opciones.

Muchas gracias Cluster.
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

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 05:55.