Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Azielito en 15 Noviembre 2006, 21:09 pm



Título: Problema con funcion "ChecaLiks" xD
Publicado por: Azielito en 15 Noviembre 2006, 21:09 pm
Pues eso, estoy haciendo una funcion para ver si hay links rotos en un documento (despues podremos pasarle un "dir" apra que lo haga con muchos archivos o lo que sea ¬¬

mi codigo es este:
Código:
<?php
function Checar($archivo){
$file = file_get_contents($archivo);
$todo =  urlencode($file);
$links = split("href",$todo);$x=1;
$total = count($links)-1;
while($x<=$total){
$archivo0 = $links[$x];
$url = split("%22",$archivo0);
$nombre = urldecode($url[1]);
if(!@file_get_contents($nombre)){
echo "<img src=\"off.gif\"> <a href=\"$nombre\" target=\"_blank\">$nombre</a><br>";
}else{
echo "<img src=\"on.gif\"> <a href=\"$nombre\" target=\"_blank\">$nombre</a><br>";
}
$x++;
}
}
Checar("index.htm");
?>

El problema:
Me da "falsos negativos"
por ejemplo, tengo un link hacia un servidor externo dos veces
unoi al inicio del documento
http://elhacker.net
y, al final del documento tengo el  mismo
http://elhacker.net
Pues, el primero me lo muestra "on" y el segundo me lo muestra "off" solo pasa en ocasiones xD

Otro problema que tengo es que, si tengo un link hacia "verCodigo.php?archivo=nombre_archivo" (por ejemplo)
me lo manda como "off"

supongo que este ultimo problema se soluciona anteponiendo la ruta del documento pero entonces ya no funcionaria del todo bien, o, tomar el server, tomar la ruta y entonces poner el nombre del archivo

Pues eso, alguna otra forma de char si esta el link roto?
por ahora lo dejo asi xD pero, solo querran que se muestre el link que esta roto

pos eso, a ver si alguien me hecha una mano :P