Afficher et lire les fichiers Mp3 sur une page
charly_luyeye
Messages postés
27
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour!
Quelqu'un peut il maider à resoudre un probleme? Je me nome Charly
Je suis en train de concevoir un site basé sur la lecture de fichier audio Mp3.
jai un peu evoluer avec ce que je fais jus que là je parvien a stocker les infos dans table et dans le dossier temporaire. mais mon propbleme est je voulais recuperer les fichiers Mp3 est les afficher sur une page pour que les utilisateurs aient la possibilité de l'auditionner par un clic.
j'ai une page Upload.php qui contient le formulaire et voici les codes
et une page profil.php sur la que l'opération affichage et lecture doit se derouler
Merci pour votre aide
Quelqu'un peut il maider à resoudre un probleme? Je me nome Charly
Je suis en train de concevoir un site basé sur la lecture de fichier audio Mp3.
jai un peu evoluer avec ce que je fais jus que là je parvien a stocker les infos dans table et dans le dossier temporaire. mais mon propbleme est je voulais recuperer les fichiers Mp3 est les afficher sur une page pour que les utilisateurs aient la possibilité de l'auditionner par un clic.
j'ai une page Upload.php qui contient le formulaire et voici les codes
<?php try { $bdd = new PDO ('mysql:host=localhost;dbname=clm_studio_multimedias', 'root' , ''); } catch(Exeption $e) { die('erreur : ' .$e->getMessage()); } if(isset($_POST['upload']) AND !empty ($_POST['upload'])) { $titre_chant=htmlspecialchars($_POST['titre_chant']); $nom_album=htmlspecialchars($_POST['nom_album']); $auteur=htmlspecialchars($_POST['auteur']); $_file_name=htmlspecialchars($_FILES['song1']['name']); if( !empty($_POST['titre_chant']) AND !empty($_POST['nom_album']) AND !empty($_POST['auteur']) AND !empty($_FILES['song1']['name'])) { $_file_size=$_FILES['song1']['size']; $tailleMax = 10097152; if(isset($_FILES['song1']['size']) <= $tailleMax) { $_file_tmp=$_FILES['song1']['tmp_name']; $_file_type=$_FILES['song1']['type']; $extensionValide = array('mp3'); $extensionUpload = strtolower(substr(strrchr($_FILES['song1']['name'], '.'), 1)); $song_name= $_POST['titre_chant']. "_" .$_POST['nom_album']. "_" .$_POST['auteur']. "." .$extensionUpload; if(in_array($extensionUpload, $extensionValide)) { $chemin = "membre/album/" .$song_name; $resultat = move_uploaded_file($_FILES['song1']['tmp_name'], $chemin); if($resultat) { $insert=$bdd->prepare('INSERT INTO album(titre_chant,nom_album, auteur) VALUES(?,?,?,?)'); $insert->execute(array($titre_chant, $nom_album, $auteur, $_file_name)); $_SESSION['titre_chant']=$_POST['titre_chant']; $_SESSION['nom_album']=$_POST['nom_album']; $_SESSION['auteur']=$_POST['auteur']; $_SESSION['song1']=$_FILES['song1']; header('location:profil.php?id=' .$_SESSION['id']); //echo "file uploaded"; } else { $erreur='Veillez reessaiyer!'; } } else { $erreur='Format invalide! Mp3 format exigé!'; } } else { $erreur='La taille de votre chanson ne doit pas depasser 10 Mo'; } } else { $erreur='Remplissez tous les champs'; } } ?> <div align="center"> <h3>Upload songs</h3> <form method="POST" action="" enctype="multipart/form-data"> <div> <table> <tr> <td><label>Titre chant:</label></td> <td><input type="texte" name="titre_chant"></td> </tr> <tr> <td><label>Nom album:</label></td> <td><input type="texte" name="nom_album"></td> </tr> <tr> <td><label>Auteur</label></td> <td><input type="texte" name="auteur"></td> </tr> <tr> <td><label></label></td> <td><input type="file" name="song1"></td> </tr> <tr> <td></td> <td><input type="submit" name="upload" value="upload"></td> </tr> </table> </div> </form><br/><br/><br/> <?php if(isset ($erreur)) echo'<font color="red">', "<br/>".$erreur. "</font>" ;?> <?php if(isset ($valide)) echo'<font color="green">', "<br/>".$valide. "</font>" ;?> </div>
et une page profil.php sur la que l'opération affichage et lecture doit se derouler
<table> <td> <tr><?php if($userinfo['id']== $_SESSION['id']) { echo 'Titre:' .$_SESSION['titre_chant']; } ?></tr><br/> </td> <td> <tr><?php if($userinfo['id']== $_SESSION['id']) { echo 'Album:' .$_SESSION['nom_album']; } ?></tr><br/></tr><br/> </td> <td> <tr><?php if($userinfo['id']== $_SESSION['id']) { echo 'A/C:' .$_SESSION['auteur']; } ?></tr><br/></tr><br/> </td> <td> <tr> <audio controls> <source src="membre/album/<?php echo ($_SESSION['song1']); ?>"></source> </audio> </tr><br/> </td> </table>
EDIT : Ajout des balises de code
d'autres infos s'affiche mais je n'arrive pas à m'ensortire avec les fichiers Mp3Merci pour votre aide
A voir également:
- Afficher et lire les fichiers Mp3 sur une page
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Comment supprimer une page sur word - Guide
- Lire fichier epub - Guide
- Télécharger musique mp3 gratuitement sur pc - Télécharger - Conversion & Extraction
- Lire fichier bin - Guide
1 réponse
Bonjour,
Tu upload le fichier sur le serveur...
Tu stockes le nom du fichier dans la bdd
Mais pour l'affichage... tu essaies d'utiliser une variable $_SESSION['song1'] qui ne contient pas le chemin vers le fichier mais le contenu de la variable $_FILES....
Pourquoi ne pas mettre en session que le chemin du fichier ou alors aller le récupérer dans la bdd vu que tu l'y stockes ?
Et ensuite c'est ce lien qu'il faut utiliser...
Tu upload le fichier sur le serveur...
Tu stockes le nom du fichier dans la bdd
Mais pour l'affichage... tu essaies d'utiliser une variable $_SESSION['song1'] qui ne contient pas le chemin vers le fichier mais le contenu de la variable $_FILES....
Pourquoi ne pas mettre en session que le chemin du fichier ou alors aller le récupérer dans la bdd vu que tu l'y stockes ?
Et ensuite c'est ce lien qu'il faut utiliser...
$song_name= $_POST['titre_chant']. "_" .$_POST['nom_album']. "_" .$_POST['auteur']. "." .$extensionUpload;
Dans le serveur c'est ok. faudrait il que le nom stocké dans le serveur soit identique au nom stocké dans la base de données?
Imagine que sur le serveur tu sauvegarde le fichier sous le nom : mon_super_fichier.pdf
et que dans la base, tu le nommes : peuimporte.csv ...... comment fais tu le lien entre les deux ????
et quel nom prend t'il au juste ?
car il semble bien que le code que tu utilises pour définir le nom du fichier soit potable
Donc en quoi le nom n'est-il pas correct selon toi ?
<!--<audio controls>
<source src="membre/album/<?php echo ($_SESSION[' nom du fichier']); ?>"></source>
</audio>-->
ça n'affiche qu'un lecteur qui ne joue pas!