IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Probleme de tableaux multidimension


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut Probleme de tableaux multidimension
    bonjour,

    Je galere depuis hier, mais je n'arrive pas a resoudre ce probleme.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <?php
    //la ou se trouve mon fichier  pour les tag id
    include_once('../getId/getid3.php'); 
    //repertoire de mes fichiers mp3
    $col="../repertoiremp3";
     
     $filesArray=glob(''.$col.'/*.mp3');
     
        for($i=0;$i<count($filesArray);$i++) 
    			{	
    	    $line.=$filesArray[$i]."";	
    		   }
     
    	//Pour pouvoir recuperer les tags des mp3 je dois recuperer chaque fichier mp3 pour le passer ici
     
    	$MP3fileInfo =GetAllMP3info($line, '');
    	print_r($MP3fileInfo);
     
    	// Il ne recupere que mon dernier fichier je ne comprends pas 
     
    ?>
    Si quelque veut bien m'aider! Merci deja

  2. #2
    jnore
    Invité(e)
    Par défaut
    Salut

    Si tu fais une var_dump($filesArray), tu verras si le tableau contient ou non les fichiers.
    Pour moi ton script fonctionne.

    Que fait ta fonction GetAllMP3info?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut
    Citation Envoyé par jnore Voir le message
    Salut

    Si tu fais une var_dump($filesArray), tu verras si le tableau contient ou non les fichiers.
    Pour moi ton script fonctionne.

    Que fait ta fonction GetAllMP3info?
    La fonction GetAllMP3info recupere les infos sur le mp3. le tag id!

    Oui le tableau contient les fichiers mais je dois vous dire que GetAllMP3info est aussi un array avec plusieurs dimensions.

  4. #4
    jnore
    Invité(e)
    Par défaut
    Mets nous la fonction, stp.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut
    C'est impossible de mettre tous les fichiers qui contiennent les fonction.

    je vais te donner un petit bout de code qui m'affichera le resultat de la fonction sur un fichier mp3

    test.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    error_reporting(E_ALL);
    include_once('../getId/getid3.php'); 
     
     $filename="../carnaval2004/Kelis - I'm Bossy feat. Too Short.mp3";
     
     
    	 $MP3fileInfo =GetAllMP3info($filename, '');
     
    foreach($MP3fileInfo as $list=>$things){
    echo' '.$list.' -> '.$things.' <br />';   
    }
    >?
    Le resultat

    getID3version -> 1.4.1b4
    exist -> 1
    filename -> Kelis - I'm Bossy feat. Too Short.mp3
    fileformat -> mp3
    filesize -> 4487254
    id3 -> Array
    mpeg -> Array
    bitrate -> 128000
    audiodataoffset -> 4096
    audiobytes -> 4483030
    playtime_seconds -> 280.189375
    playtime_string -> 4:40

  6. #6
    Membre éclairé Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Par défaut
    tu l'initialises quelque part ton $line ?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut
    Citation Envoyé par Pymento Voir le message
    tu l'initialises quelque part ton $line ?
    Oui dans la condition

  8. #8
    Membre confirmé Avatar de bigltnt
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Par défaut
    Je ne suis pas sur mais y'a un truc bizarre:

    Ici tu concatènes tout ton tableau en une ligne, sans aucune séparation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for($i=0;$i<count($filesArray);$i++) 
    			{	
    	    $line.=$filesArray[$i]."";	
    		   }
    Donc j'imagine que tu dois avoir dans $line un truc du genre:
    './rep/fichier1.mp3./rep/fichier2.mp3./rep/fichier3.mp3'
    Ce qui me parait difficilement exploitable.

    Surtout que pour appuyer ma reflexion, tu nous donnes plus tard:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $filename="../carnaval2004/Kelis - I'm Bossy feat. Too Short.mp3";
     
     
    	 $MP3fileInfo =GetAllMP3info($filename, '');
    Ici $filename ne contient bien qu'un seul chemin.

    Est-ce une erreur ?

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut
    Citation Envoyé par bigltnt Voir le message
    Je ne suis pas sur mais y'a un truc bizarre:

    Ici tu concatènes tout ton tableau en une ligne, sans aucune séparation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for($i=0;$i<count($filesArray);$i++) 
    			{	
    	    $line.=$filesArray[$i]."";	
    		   }
    Donc j'imagine que tu dois avoir dans $line un truc du genre:
    './rep/fichier1.mp3./rep/fichier2.mp3./rep/fichier3.mp3'
    Ce qui me parait difficilement exploitable.

    Surtout que pour appuyer ma reflexion, tu nous donnes plus tard:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $filename="../carnaval2004/Kelis - I'm Bossy feat. Too Short.mp3";
     
     
    	 $MP3fileInfo =GetAllMP3info($filename, '');
    Ici $filename ne contient bien qu'un seul chemin.

    Est-ce une erreur ?

    J'ai un separateur '!'

    revoici mon code en vrai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <?php
    $col="../".$RName."";
     $filesArray=glob(''.$col.'/*.mp3');
     
        for($i=0;$i<count($filesArray);$i++) {	
    		if($i<count($filesArray)-1){ 
    		$deco = "|";
    		} else { 
    		$deco = ""; 
    			} 
            //$line.=key($filesArray)." - ";    
            $line.=$filesArray[$i]."".$deco."";	
     
            // next($filesArray);
    	   }
    Je vous ai donne le $filename pour te montrer le chemin pour un mp3.

    maintenant je vais devoir lister tout un repertoire, et passer chaque mp3

    par un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $MP3fileInfo =GetAllMP3info($filename, '');
    ce qui donnerait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    	 $MP3fileInfo =GetAllMP3info($line, '');
     
    foreach($MP3fileInfo as $list=>$things){
    echo' '.$list.' -> '.$things.' <br />';   
    }
    ?>

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Par défaut
    Ok j'arrive a recuperer les infos pour tous mes fichiers mp3

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php
    include_once('../getId/getid3.php'); 
     $col="../repertoiremp3";
     $filesArray=glob(''.$col.'/*.mp3');
     
     
    	foreach($filesArray as $line){ 
     
     
       //Je vais recuperer l'info sur chaque mp3
    	$MP3fileInfo = GetAllMP3info($line);	
    					foreach($MP3fileInfo as $list=>$things){
    				echo' '.$list.' -> '.$things.' <br />'; 
    					}
       }
     
     
       ?>
    Mais je recois ce message d'erreur

    Warning: Division by zero in C:\wamp\www\getId\getid3.mp3.php on line 236

    Je ne sais pas s'il y a une personne qui peut m'aider

    Autre chose pour recuperer les autres array voici ce que j'ai fait

    s'il y a plus simple dit moi merci !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    <?php
    include_once('../getId/getid3.php'); 
     $col="../repertoire";
     $filesArray=glob(''.$col.'/*.mp3');
    	foreach($filesArray as $line){  
       //Je vais recuperer l'info sur chaque mp3
    	$MP3fileInfo = GetAllMP3info($line);
     
     
    					foreach($MP3fileInfo as $list=>$things)
    					{
    						if (is_array($things))
    							foreach($things as $toto =>$tata)
    							{
    									if (is_array($tata))
    									foreach($tata as $titi =>$tete)
    									{
    									echo $titi."[3] ".$tete."<br />";
    									}
    									else
    							echo $toto."[2] ".$tata."<br />";
    							}
    						else
    					echo $list." [1] ".$things."<br/>";
    					}
       }
       ?>
    C'est resolu, mais il reste 2 choses, l'erreur sur certains mp3 et la simplicite du code. Merci

Discussions similaires

  1. probleme alignement tableaux
    Par Invité dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 04/05/2007, 13h50
  2. Probleme de tableaux
    Par X-plode dans le forum Langage
    Réponses: 3
    Dernier message: 16/03/2007, 11h57
  3. Probleme allocation tableau multidimensions
    Par orj30754 dans le forum C
    Réponses: 15
    Dernier message: 27/12/2006, 15h13
  4. [Tableaux] probleme de tableaux
    Par davmaster62 dans le forum Langage
    Réponses: 3
    Dernier message: 05/03/2006, 21h08
  5. Réponses: 6
    Dernier message: 04/04/2003, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo