Écrire en php dans fichier xml après listage pour playlist

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Écrire en php dans fichier xml après listage pour playlist

par Invité » 06 févr. 2007, 16:30

Merci Cyrano pour ta méthode de travail que je vais essayer d'adopter. Copier-coller ;) mais tu n'as donc trouvé que ça à redire à mon script. Ca veut dire que je suis reçue et que c'est tout est bon ?

Debbie (zou) :D

par Cyrano » 06 févr. 2007, 15:37

Un seul avis : aère ton code, il est un peu illisible, comme ceci par exemple :
<?php
$xml = '<?xml version="1.0" encoding="iso-8859-1"?>'//entête 
.'<playlist>';//première balise avant boucle
$rep = "zik";//répertoire des morceaux à lister
/* si fichier est un répertoire */
if (is_dir($rep))
{
    /* ouverture du fichier */
    if ($dossier = opendir($rep))
    {
        /* début de boucle */
        while (($fichier = readdir($dossier)) !== false)
        {
            /* on bannit le . et le .. */
            if ($fichier !="." && $fichier !="..")
            {
                $xml .= "<song>";//balise song
                $xml .= $fichier;//chanson
                $xml .= "</song>";//fermeture balise song
            }//if qui bannit
        }//while fermé
        closedir($dossier);//fermeture du répertoire listé
    }//second if
}//premier if
/* fermeture balise */
$xml .= "</playlist>";

$fp = fopen("playlist.xml", 'w+');  //fichier déjà existant
fputs($fp, $xml);                   //on inscrit la totale
fclose($fp);                        //on ferme le fichier playlist.xml

echo 'Export XML effectué !<br><a href="playlist.xml">Voir le fichier</a>';//aperçu
?> 
N'oublie jamais un détail : en ce moment, le code est clair dans ta tête, tu retrouves rapidement le bon endroit si un problème survient. Mais dans six mois ou un an ou deux ans, tu voudras apporter une amélioration ou une modification, tu vas perdre un temps considérable à relire ton propre code d'abord pour le comprendre. Les commentaires, c'est très bien, mais du code bien indenté et aéré, c'est encore mieux ;)

Écrire en php dans fichier xml après listage pour playlist

par Debbie » 06 févr. 2007, 14:05

Bonjour,

Je voulais avoir votre avis sur "mon" code (me suis aidé un peu du net) et savoir si je partais dans la bonne direction, s'il me manque rien, si mon xml est bon etc etc etc...car je suis NOOB :roll:

La finalité est de créer une playlist intégrable sous Flash pour faire "MON" propre jukebox, le plus épuré que possible

Voici mon code ultra commenté j'en conviens :
<?php $xml = '<?xml version="1.0" encoding="iso-8859-1"?>'//entête 
.'<playlist>';//première balise avant boucle 
$rep = "zik";//répertoire des morceaux à lister
if (is_dir($rep)) {//si fichier est un répertoire
if ($dossier = opendir($rep)) {//ouverture du fichier
while (($fichier = readdir($dossier)) !== false) {//début de boucle
if ($fichier !="." && $fichier !=".."){//on bannit le . et le ..
$xml .= "<song>";//balise song
$xml .= $fichier;//chanson 
$xml .= "</song>";//fermeture balise song 
}//if qui bannit
}//while fermé
closedir($dossier);//fermeture du répertoire listé
}//second if
}//premier if
$xml .= "</playlist>";//fermeture balise 
$fp = fopen("playlist.xml", 'w+');//fichier déjà existant
fputs($fp, $xml);//on inscrit la totale 
fclose($fp);//on ferme le fichier playlist.xml
echo 'Export XML effectué !<br><a href="playlist.xml">Voir le fichier</a>';//aperçu 
?> 
Mon XML :

Code : Tout sélectionner

<?xml version="1.0" encoding="iso-8859-1" ?> - <playlist> <song>LedZeppelin_black_ dog.mp3</song> <song>LedZeppelin_Communication_Breakdown.mp3</song> <song>LedZeppelin_Custard_Pie.mp3</song> <song>LedZeppelin_how_many_more_times.mp3</song> </playlist>
Qu'en dites vous ? Toute critique sera la bienvenue...

Merci

Debbie

Ps : Oui je suis fan des Led Zep' ^^