Foros del Web » Programando para Internet » PHP »

Error al mostrar y descargar directorio

Estas en el tema de Error al mostrar y descargar directorio en el foro de PHP en Foros del Web. Buenas, mi intencion es mostrar un directorio y que de la opcion de forzar la descarga, pero me da error :s miren el codigo es ...
  #1 (permalink)  
Antiguo 22/05/2008, 10:53
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 10 meses
Puntos: 1
Error al mostrar y descargar directorio

Buenas, mi intencion es mostrar un directorio y que de la opcion de forzar la descarga, pero me da error :s

miren el codigo es el siguiente

Código PHP:
<?php
if ($descarga == "");
{
$dir = (isset($_GET['dir']))?$_GET['dir']:"/";
$directorio=opendir($dir); 
echo 
"<b>Directorio actual:</b><br>$dir<br>"
echo 
"<b>Archivos:</b><br>"
while (
$archivo readdir($directorio)) { 
  if(
$archivo == '.')
    echo 
"<a href=\"?dir=.\">$archivo</a> - <a href=\"?descarga=&dir=.\">$Descargar: $archivo</a><br>"
  elseif(
$archivo == '..'){ 
    if(
$dir != '.'){ 
      
$carpetas split("/",$dir); 
      
array_pop($carpetas); 
      
$dir2 join("/",$carpetas); 
      echo 
"<a href=\"?dir=$dir2\">$archivo</a> - <a href=\"?descarga=&dir=$dir2\">$Descargar: $archivo</a><br>"
    } 
  }
  elseif(
is_dir("$dir/$archivo"))
    echo 
"<a href=\"?dir=$dir/$archivo\">$archivo</a> - <a href=\"?descarga=&dir=.\">$Descargar: $archivo</a><br>"
  else echo 
"$archivo<br>"

closedir($directorio); 
}
elseif (
$descarga == $_GET[descarga] { ?>
<META HTTP-EQUIV="Refresh" CONTENT="3;URL=<? echo"$_GET[descarga]" ?>.zip">
<?
}
?>
Muchas gracias por su atencion :)
  #2 (permalink)  
Antiguo 22/05/2008, 11:50
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 10 meses
Puntos: 1
Respuesta: Error al mostrar y descargar directorio

nadie tiene alguna idea de que puedo hacer?
  #3 (permalink)  
Antiguo 22/05/2008, 12:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Error al mostrar y descargar directorio

si... puedes leer el manual de PHP, si quieres...

ya que donde comparas is_dir() esta MAL, ya que sigues agregando al enlace ./
y donde se supone ke va una archivo... pones $dir/ (o algo asi)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 22/05/2008, 12:20
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 17 años, 1 mes
Puntos: 101
Respuesta: Error al mostrar y descargar directorio

Hola,
Prueba haci:
Código PHP:
<?php 
if ($descarga == ""); 

$dir = (isset($_GET['dir']))?$_GET['dir']:"/"
$directorio=opendir($dir);  
echo 
"<b>Directorio actual:</b><br>".$dir."<br>";  
echo 
"<b>Archivos:</b><br>";  
while (
$archivo readdir($directorio)) {  
  if(
$archivo == '.'
    echo 
"<a href=\"?dir=.\">".$archivo."</a> - <a href=\"?descarga=&dir=.\">".$Descargar.": ".$archivo."</a><br>";  
  elseif(
$archivo == '..'){  
    if(
$dir != '.'){  
      
$carpetas split("/",$dir);  
      
array_pop($carpetas);  
      
$dir2 join("/",$carpetas);  
      echo 
"<a href=\"?dir=".$dir2."\">".$archivo."</a> - <a href=\"?descarga=&dir=".$dir2."\">".$Descargar.": ".$archivo."</a><br>";  
    }  
  } 
  elseif(
is_dir("$dir/$archivo")) 
    echo 
"<a href=\"?dir=".$dir."/".$archivo."\">".$archivo."</a> - <a href=\"?descarga=&dir=.\">".$Descargar.": ".$archivo."</a><br>";  
  else echo 
$archivo."<br>";  
}  
closedir($directorio);  

elseif (
$descarga == $_GET['descarga']) { ?> 
<META HTTP-EQUIV="Refresh" CONTENT="3;URL=<? echo $_GET['descarga'?>.zip"> 
<? 

?>
Suerte
Salu2
__________________
Half Music - www.halfmusic.com
  #5 (permalink)  
Antiguo 22/05/2008, 12:27
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 10 meses
Puntos: 1
Respuesta: Error al mostrar y descargar directorio

Cita:
Iniciado por pato12 Ver Mensaje
Hola,
Prueba haci:
Código PHP:
<?php 
if ($descarga == ""); 

$dir = (isset($_GET['dir']))?$_GET['dir']:"/"
$directorio=opendir($dir);  
echo 
"<b>Directorio actual:</b><br>".$dir."<br>";  
echo 
"<b>Archivos:</b><br>";  
while (
$archivo readdir($directorio)) {  
  if(
$archivo == '.'
    echo 
"<a href=\"?dir=.\">".$archivo."</a> - <a href=\"?descarga=&dir=.\">".$Descargar.": ".$archivo."</a><br>";  
  elseif(
$archivo == '..'){  
    if(
$dir != '.'){  
      
$carpetas split("/",$dir);  
      
array_pop($carpetas);  
      
$dir2 join("/",$carpetas);  
      echo 
"<a href=\"?dir=".$dir2."\">".$archivo."</a> - <a href=\"?descarga=&dir=".$dir2."\">".$Descargar.": ".$archivo."</a><br>";  
    }  
  } 
  elseif(
is_dir("$dir/$archivo")) 
    echo 
"<a href=\"?dir=".$dir."/".$archivo."\">".$archivo."</a> - <a href=\"?descarga=&dir=.\">".$Descargar.": ".$archivo."</a><br>";  
  else echo 
$archivo."<br>";  
}  
closedir($directorio);  

elseif (
$descarga == $_GET['descarga']) { ?> 
<META HTTP-EQUIV="Refresh" CONTENT="3;URL=<? echo $_GET['descarga'?>.zip"> 
<? 

?>
Suerte
Salu2

Muchas gracias, pero me da error en esta linea:
elseif ($descarga == $_GET['descarga']) { ?>
Parse error: syntax error, unexpected T_ELSEIF in /homepages/23/d241661004/htdocs/avatar/index.php on line 25
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 22:00.