Bueno, pues tengo un problemita, no consigo ver los archivos que hay dentro de una carpeta con este código:
<?php
if ($gestor = opendir(".")) {
while (false !== ($archivo = readdir($gestor))) {
if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
echo '<img border="0" src="img/icon_file.gif"> ';
echo '<a href="?h=';
echo "$archivo\n";
echo '" style="text-decoration: none">';
echo "$archivo\n";
echo "</a>";
echo "<br>";
}
}
closedir($gestor);
}
?>
Lo que quiero es ver los archivos que hay dentro de la carpeta por ejemplo "img" y hago lo siguiente:
<?php
if ($gestor = opendir("./img")) {
while (false !== ($archivo = readdir($gestor))) {
if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
echo '<img border="0" src="img/icon_file.gif"> ';
echo '<a href="?h=';
echo "$archivo\n";
echo '" style="text-decoration: none">';
echo "$archivo\n";
echo "</a>";
echo "<br>";
}
}
closedir($gestor);
}
?>
Pero no me funciona he probado "img", "/img" lo he probado de todos modos y nada, en un código parecido si que me va perfectamente, pero ahí no se que pasa que no me va. No se que puede ser.
Un saludo.
Probaste con "../" :huh:
Dependerá de donde se encuentre el script, por ejmplo, para este ejemplo yo me encuentro en la carpeta "htdocs" y para ver los archivos de la misma, le paso como parámetro la siguiente cadena:
$dir="../htdocs";
if ($gestor = opendir($dir))
Pero si quisiera ver los archivos de una carpeta que se encuentra en el mismo directorio que el script, entonces basta con esto:
$dir = ("Carpeta/");
Cada vez que quieras ir atrás usas otro "../"
Si lo se, lo he probado de todas las menera y nada, el código entero es este:
<head>
<meta http-equiv="Content-Language" content="es">
</head>
<table border="0" width="1242" id="table1">
<tr>
<td width="160"> </td>
<td width="53">
<p align="center"></td>
<td width="1015">
<p align="center">Navegador</td>
</tr>
<tr>
<td width="160">
<?php
echo ("<b>Carpetas: </b><br>");
if ($gestor = opendir(".")) {
while (false !== ($archivo = readdir($gestor))) {
if ($archivo != "." && $archivo != "img" && $archivo != ".." && is_dir($archivo)==TRUE) {
echo '<img border="0" src="img/icon_folder_open.gif"> ';
echo '<a href="?f=';
echo "$archivo\n";
echo '" style="text-decoration: none">';
echo "$archivo\n";
echo "</a>";
echo "<br>";
}
}
closedir($gestor);
}
echo ("<br><b>Historiales: </b><br>");
if ($gestor = opendir(".")) {
while (false !== ($archivo = readdir($gestor))) {
if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($archivo)==TRUE) {
echo '<img border="0" src="img/icon_file.gif"> ';
echo '<a href="?h=';
echo "$archivo\n";
echo '" style="text-decoration: none">';
echo "$archivo\n";
echo "</a>";
echo "<br>";
}
}
closedir($gestor);
}
?>
</td>
<td width="53">
</td>
<td width="1015"><?php include($_GET[h]) ?></td>
</tr>
</table>
Estoy haciendo una aplicación publica para leer el historial de windows de la aplicación Pigdin sin el programa, para así no perderlos y poderlos leer de una forma "amena", aunque eso ahora es lo de menos.
Mira, tengo el código dentro del "index.php" y luego tengo una carpeta llamada "img" con dos imágenes que quiero que me liste para probar.
No me lista nada, pero si creo carpetas y archivos al lado de "index.php" y uso el código que te he pasado me lista todo bien.
(http://i214.photobucket.com/albums/cc173/dimitrix-es/Dibujo-15.jpg)
CitarNo me lista nada, pero si creo carpetas y archivos al lado de "index.php" y uso el código que te he pasado me lista todo bien.
a bueno... mira:
Citarfile_exists
(PHP 3, PHP 4, PHP 5)
Devuelve TRUE si el archivo o directorio especificado por nombre_archivo existe; o FALSE de lo contrario.
En windows, use //nombre_computadora/recurso/nombre_archivo o \\nombre_computadora\recurso\nombre_archivo para revisar archivos en recursos compartidos de red.
En ese caso, la cadena que le pasas a is_file($file) esta incompleta, ya que readdir() solo te devuelve el nombre del fichero.
if ($gestor = opendir("img/"))
{
while (false !== ($archivo = readdir($gestor)))
{
$file = "./img/".$archivo;
if ($archivo != "." && $archivo != "index.php" && $archivo != ".." && is_file($file)==TRUE)
{
Bien, ya me funciona el código, muchas gracias, haber si tardo poco en terminarlo y lo subo por si a alguien le interesa esto, un saludo.