Contacto | #php_para_torpes | Enlázanos | ¿Quiénes somos?
33 usuarios Online (0)
Darse de alta en la web | Recuperar password   
Inicio / Foros / PHP / Ayuda con metodo PHP
0 respuestas recibidas | 39 visitas | Categoría PHP

Ayuda con metodo PHP

Avatar de LordMac
Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1

(Nivel 1 - 14 posts)

#0 Offline LordMac Usuario 12 mar 08 (04:50)  
Holaa todos
Necesito saber si alguien puede ayudarme,tengo un metodo que dado una url pasada por parametro me recoje una lista de urls , funciona bien hasta que llamo recursivo para cada url de la lista, el problema es el siguiente,cuando llamo con el primer elemento de la lista para obtener un nuevo listado de url e insertarlo al final de la lista , me esta creando una redundancia de url , ejemplo ,
si el sitio esta utilizando un cms(joonla por ejemplo) , me escribe en varias ocaciones

http://mipagina.com/index.php/#
http://mipagina.com/index.php/#
http://mipagina.com/index.php/#
http://mipagina.com/index.php/#
etc....
pero ademas de eso cuando convierto la url de relativa en absoluta y le toca a ella para formar el listado me hace referencia a ella misma y a otras que ya estan en la lista, por ejemplo

http://mipagina.com/?q=produccion //--Ya esta pagina la tengo en la lista (la tengo indexada)
http://mipagina.com/?q=node/1834/?q=produccion //Esta es la misma que la anterior
http://mipagina.com/?q=tecnologia
http://mipagina.com/?q=node/1834/?q=tecnologia
http://mipagina.com/?q=node/1835/?q=tecnologia
http://mipagina.com/?q=node/1836/?q=tecnologia
http://mipagina.com/?q=node/1834/?q=produccion/?=tecnologia

Esto es muy molesto ya que el proceso de indexacion de una pagina es un proceso muy costoso (recursos) y si ademas eso tengo que hacerlo con la misma pagina varias veces....
Si alguien tiene una idea de como resolver el problema se lo agradeceria , si no me hago entender bien me escriben.
Saludos y gracias de antemano.
Aqui les dejo el codigo por si alguien puede ayudarme

Código PHP


for ($i=0;$i<count($newListado);$i++) //$new listado es el listado original que obtengo de la pagina
{
//indentificamos cuales son url  absolutas
//si la url comienza con http://  ó https
if(eregi('^(http://|https://)',$newListado[$i]))
{
    //devolvemos la url porque es absoluta
    $listado_limpio[$i]=$newListado[$i];
}
else
{
    //sino la convertimos
    //estas urls son relativas a la página q estamos analizando, entonces..
$url=$newListado[$i];
//si la url  no comienza con "/"  la ponemos
if(!ereg('^(/)',$newListado[$i]))
$listado_limpio[$i]= $urlprincipal.'/'.$url;
else
$listado_limpio[$i]= $urlprincipal.$url;
}
}
// recorro el arreglo para eliminar los slash finales de la url si lo tiene
for ($i=0;$i<count($listado_limpio);$i++)
{
if (ver_si_tiene_slash_final($listado_limpio[$i] ))
    {
         //Lo Eliminamos
     $listado[$i]=substr($listado_limpio[$i],0,(strlen($listado_limpio[$i])-1));
    }
    else
     $listado[$i]=$listado_limpio[$i];
}
return $listado;//retorno el listado

Responder mensaje

Para poder participar debes estar registrado e identificado. Si no estás registrado como usuario de PHP-Hispano, :: Registrar ::
Login / Password   

Web alojada en Zilos

php-hispano.net 2002 - 2008 | XHTML 1.0
Datos Legales | Webmaster