Error en listado php
Publicado por Corcho (2 intervenciones) el 20/03/2017 19:43:30
¡Hola! Mi nombre es Corcho y he estado ojeando estos foros durante algunos días para iniciarme en php, pero he encontrado un error que no me deja continuar. Creo que tiene algo que ver con el funcionamiento de "echo".
Os explico lo que trato de hacer. Estoy intentando hacer un código en php que me haga un listado de canciones en una tabla html. La tabla tiene 3 columnas: canción, reproducción y descargas. Debe explorar una carpeta llamada "media" llena de otras carpetas. Cada una de estas carpetas se llamará como la canción en cuestión (dicho nombre es el que se usa para la primera columna de la tabla) tendrá archivos para reproducir y descargar a partir de la tabla creada. El script explorará cada carpeta y si hay archivos pdf o de audio (mp3) los mostrará en la tabla para descargarlos.
Os dejo aquí el código:
Esto es lo que me sale en el navegador, y por lo cual he decidido escribir para ver si alguien sabe qué puede estar ocurriendo:
Me ocurre algo parecido con cualquier código que tenga "echo". ¿Me podríais echar una mano? He revisado mil veces las comillas, dobles comillas...etc, y esto está entorpeciendo mi aprendizaje bastante.
¡Gracias por leer!
Os explico lo que trato de hacer. Estoy intentando hacer un código en php que me haga un listado de canciones en una tabla html. La tabla tiene 3 columnas: canción, reproducción y descargas. Debe explorar una carpeta llamada "media" llena de otras carpetas. Cada una de estas carpetas se llamará como la canción en cuestión (dicho nombre es el que se usa para la primera columna de la tabla) tendrá archivos para reproducir y descargar a partir de la tabla creada. El script explorará cada carpeta y si hay archivos pdf o de audio (mp3) los mostrará en la tabla para descargarlos.
Os dejo aquí el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<!DOCTYPE html>
<html>
<body>
<?php
$path="./media/";
$carpeta=dir($path);
echo '<table border=\"1\" bgcolor=dddddd>';
echo '<tr bgcolor=\"aaaaaa\">';
echo '<th><strong>Cancion</strong></th>';
echo '<th><strong>Reproduccion</strong></th>';
echo '<th><strong>Descargas</strong></th>';
echo '</tr>';
while ($archivo = dir($carpeta)) {
if (is_dir($archivo))
{
$name_dir = ucfirst($archivo);
echo "<tr><td>$archivo</td>";
while ($media = dir($archivo)) {
echo "<td>";
if(strtolower(substr($media, -3) == "mp3")) {
echo "<td><audio src=\"media/$media\" controls></audio></td>";
}
echo "</td>";
echo "<td>";
if(strtolower(substr($media, -3) == "pdf")) {
echo "<a href=\"media/$media\" target=\"_blank\"><img src=\"images/pdf.png\" width=\"32\" height=\"35\" border=\"0\"></a>";
}
if(strtolower(substr($media, -3) == "mp3")) {
$name = ucfirst($media);
echo "<a href=\"media/$media\" download=\"$name\" target=\"_blank\"><img src=\"images/music.png\" width=\"32\" height=\"35\" border=\"0\"></a>";
}
echo "</td></tr>";
}
}
}
echo "</table>";
$carpeta->close();
$archivo->close();
$media->close();
?>
</body></html>
Esto es lo que me sale en el navegador, y por lo cual he decidido escribir para ver si alguien sabe qué puede estar ocurriendo:
Me ocurre algo parecido con cualquier código que tenga "echo". ¿Me podríais echar una mano? He revisado mil veces las comillas, dobles comillas...etc, y esto está entorpeciendo mi aprendizaje bastante.
¡Gracias por leer!
Valora esta pregunta
0