Buenas, aunque ya voy a cerrar el tema porque ya me funciona, una última pregunta respecto a listar los archivos.
He montado este código:
Código PHP:
<?php
$directorio = "/wamp/www/audio";
//
//
$gestor_dir = opendir($directorio);
while (false !== ($nombre_fichero = readdir($gestor_dir))) {
$ficheros[] = $nombre_fichero;
}
if ($gestor = opendir('.')) {
while (false !== ($entrada = readdir($gestor))) {
if ($entrada != "." && $entrada != "..")
{
$result[]= '{ruta:"'."$entrada".'"}';
}
}
closedir($gestor);
}
$string[] = implode(",", $result).""; //concateno el punto al final
$resultado=$string;
?>
<script type="text/javascript">
// obtenemos el array de valores mediante la conversion a json del
// array de php
var arrayJS=<?php echo json_encode($string);?>;
// Mostramos los valores del array
for(var i=0;i<arrayJS.length;i++)
{
document.write("<br>"+arrayJS[i]);
}
</script>
que me genera este resultado:
Código PHP:
{ruta:"dos.mp3"},{ruta:"Musicprueba1.mp3"},{ruta:"tres.mp3"},{ruta:"uno.mp3"}
el cual puesto en tu código funciona sin problemas, pero si añado el código a tu al tuyo no funciona (seguro que no lo hago bien) si me hechas una mano te lo agradezco.
este es el resultado todo junto:
Código PHP:
<html>
<?php
$directorio = "/wamp/www/audio";
$gestor_dir = opendir($directorio);
while (false !== ($nombre_fichero = readdir($gestor_dir))) {
$ficheros[] = $nombre_fichero;
}
if ($gestor = opendir('.')) {
while (false !== ($entrada = readdir($gestor))) {
if ($entrada != "." && $entrada != "..")
{
$result[]= '{ruta:"'."$entrada".'"}';
}
}
closedir($gestor);
}
$string[] = implode(",", $result).""; //concateno el punto al final
$resultado=$string;
?>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>FdW - Reproductor de música</title>
<style>
img, label, audio{
display: block;
margin: 0 auto;
text-align: center;
}
img{
width: 200%;
}
</style>
<script type="text/javascript">
'use strict';
/**
* Reproductor de música
*
* @author Alexis88
*/
var Reproductor = {
init: function(){
//text-align: center;
//Arreglo de canciones con sus respectivos atributos
Reproductor.canciones = [
var arrayJS=<?php echo json_encode($string);?>;
// Mostramos los valores del array
for(var i=0;i<arrayJS.length;i++)
{
document.write("<br>"+arrayJS[i]);
}
/* {
artista: "Circa Waves",
cancion: "Uno",
ruta: "uno.mp3"
},
{
artista: "Circa Waves",
cancion: "Fire That Burns",
ruta: "http://umgukvirgin.edgesuite.net/D2C/circawaves/circawaves-firethatburns.mp3",
portada: "https://s-media-cache-ak0.pinimg.com/originals/51/95/70/5195701e847bc0a38f25f5721bce92f1.jpg"
},
{
artista: "Circa Waves",
cancion: "Stuck",
ruta: "http://umgstore.edgesuite.net/D2C/circawaves/Stuck.mp3",
portada: "http://ksassets.timeincuk.net/wp/uploads/sites/55/2017/03/2017_CircaWaves_Press_080317.jpg"
}*/
];
//Establecemos los elementos de portada, título, reproductor y contador
Reproductor.portrait = document.querySelector("#portrait");
Reproductor.title = document.querySelector("#title");
Reproductor.player = document.querySelector("#player");
Reproductor.cuenta = 0;
//Se reproduce la primera canción
Reproductor.tocar();
},
tocar: function(){
//Se establece la portada, artista y título y el archivo de audio
Reproductor.portrait.src = Reproductor.canciones[Reproductor.cuenta].portada;
Reproductor.title.innerHTML = Reproductor.canciones[Reproductor.cuenta].artista + " - " + Reproductor.canciones[Reproductor.cuenta].cancion;
Reproductor.player.src = Reproductor.canciones[Reproductor.cuenta].ruta;
//Se actualiza el contador
Reproductor.cuenta = Reproductor.cuenta == Reproductor.canciones.length - 1 ? 0 : ++Reproductor.cuenta;
//Se reproduce la canción
Reproductor.player.play();
//Cuando acabe una canción, se reproduce la que sigue
Reproductor.player.addEventListener("ended", Reproductor.tocar);
}
};
//Al cargar la página
document.addEventListener("DOMContentLoaded", Reproductor.init);
</script>
</head>
<body>
<img id="portrait" />
<label id="title"></label>
<audio id="player" controls="controls" type="audio/mpeg"></audio>
</body>
</html>
gracias otra vez