Foros del Web » Programando para Internet » PHP »

Generar Links automaticamente con urls de un directorio.

Estas en el tema de Generar Links automaticamente con urls de un directorio. en el foro de PHP en Foros del Web. Despues de pasarme horas tratando de sacar este script que automaticamente me genera links del tipo "<a href..." me topo con otro problema, primero explicar ...
  #1 (permalink)  
Antiguo 27/08/2010, 06:57
 
Fecha de Ingreso: noviembre-2008
Ubicación: Cochabamba Bolivia
Mensajes: 519
Antigüedad: 14 años, 2 meses
Puntos: 26
Generar Links automaticamente con urls de un directorio.

Despues de pasarme horas tratando de sacar este script que automaticamente me genera links del tipo "<a href..." me topo con otro problema, primero explicar un poco esto:

Este script basado en cadenas me toma la url que le ponga y de ella me toma en nombre del archivo de la url, tomando eso se extrae el title de dicho archivo para poder sacar un texto que servira para el texto del link, obiamente como muestra en el codigo este texto que se extrae del title del contenido de dicha url, se obtiene en base al nombre del mismo archivo, por ejemplo, si el archivo de la url se llama http://music-strike.net/a/alternativo/nickelback.php ps en el title del contenido de este archivo, busca la palabra nickelback y este se usa para el link que se va a generar.

todo el script este esta hecho en una sola funcion para poder usarlo con cualquier url.

Código PHP:
<?php


function title($url$inicio){

$enlace str_replace(".php"," "$url);
$final strlen($enlace);
$a substr($enlace,$inicio,$final);
$inicio_title "<title>";
$final_title "</title>";
$source = @file_get_contents($url)or die('se ha producido un error');
$posicion_inicio strpos($source$inicio_title) + strlen($inicio_title);
$posicion_final strpos($source$final_title) - $posicion_inicio;
$found_text substr($source$posicion_inicio$posicion_final);
$carac_artista strlen($a);
$inicio_artista strpos($found_text,$a);
$title substr($found_text,$inicio_artista,$carac_artista);
return 
$title;

}

?>
Ahora como no se mucho de php pero al final logro cosillas asi despues de mucho, me tope con otro problema, con el cual no quiero estar pasandome de nuevo horas e incluso dias para poder lograr mi objetivo, ya lo intente de varias maneras pero no digo que no pueda conseguirlo, solo que no quiero estar pasandome entregando tanto tiempo a esto cosa que a otros mas experienciados les resulte mas facil y me puedan ayudar.

Lo quier quiero es que todas las urls de un archivo se tomen y se pasen por la funcion anterior para generar automaticamente los links con cada archivo, cosa que estos links se usen como menu de acceso a todos esos archivos de dicho directorio.

El script para obtener las urls de todos los archivos de un directorio es este:

Código PHP:
<?php 

include("z_funcion-link.php");    
$inicio "38";  ====>(este unicio es un dato requerido para usar en la funcion del include)


   
//---Obtener variables pasadas por GET 
   
$path = !isset($_GET['path']) ? './' $_GET['path']; 
   
$files = !isset($_GET['files']) ? '\w{3,4}' '(' implode(')|('explode('@'$_GET['files'])) . ')'
   
$order = !isset($_GET['order']) ? 'name' $_GET['order']; 
    
   
//---Arreglo donde se guardarán todos los archivos 
   
$store = array(); 
    
   
//---Regular Expression 
   
$reg '/\w*+.+'$files .'$/'
    
   
$sum 0
    
   
//---Si es un directorio 
   
if(is_dir($path)){ 
       
      
//---Abrir el directorio 
      
if($gd opendir($path)){ 
          
         
//---Recorrer todos los archivos del directorio 
         
while(($archivo readdir($gd)) !== false){ 
             
            
//---Si se cumple la expresión regular 
                           
if(preg_match($reg$archivo) && !is_dir($archivo)){ 

               
$comple "http://music-strike.net/a/alternativo/";
               
$url $comple $archivo;

echo 
$url;
                
        
             }
         } 
          
      } 
       
   } 
    
    
?>
Si este script lo prueban te devuelve todas las urls de los archivos en un directorio, (por defecto en el directorio donde se encuentra el script), al final lo que hace que muestre las urls es el termino "echo $url;" es decirla variable $url es el que contiene todos las urls de todos los archivos del directorio.

AHORA, lo que yo quiero es pasar todas las urls esas pasen por la funcion title que es la que genera los links con la url que se le asigne, pero cuando hago la llamada a la funcion con la variable $url no me sale nada, no se cual sera el lio, pero intente con un array hacia la funcion incluida con la variable o bien con un while pero aun asi no pude con ello..
Al final estuve de salida ahora y espero que puedan ayudarme. denme opciones por favor.
Gracias de Antemano.

Etiquetas: automaticamente, directorio, links, url
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 16:17.