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

Langage PHP Discussion :

[Tableaux] blocague dans boucle


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 476
    Points : 4 687
    Points
    4 687
    Par défaut [Tableaux] blocague dans boucle
    yop !

    j'ai 2 scripts pour effectuer la meme tache et ils marchent bien tous les 2.
    le probleme c'est que je fais une boucle qui exécute 100 fois le script comme ca, je voit s'il bouffe beacoup de ressources et lequel est plus rapide a l'execution...
    et donc, il m'affiche 34 fois le résultat attendu avec firefox et 28 fois avec IE....
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <?php
    		if(empty($_POST['bt_lire_exif']))
    		{
    // OSEF
    		}
    		else
    		{
    		 echo '<form method="POST" action="index.php">';
    		 echo '<input type="text" name="image"/>&nbsp;';
    		 echo '<input type="submit" name="bt_lire_exif" value="lire exifs"/>';
    		 echo '</form>';
     
    			// ----------------- //
    			// ca commence ici ! //
    			// ----------------- //
     
    		 $image=$_POST['image'];
     
        $compteur=1;
        while( $compteur<=100)
        {
     
    			// savoir si l'image contient des entetes
     
    		 $exif = exif_read_data($image, 'EXIF');// on peu lui dire de cherche FILE, COMPUTED, IFD0, THUMBNAIL, COMMENT, EXIF
    		 echo $exif===false ? "Aucun Exif n'a été trouvé.<br />\n" : "L'image contient des Exifs<br />\n";
     
    			// lecture des exifs
    		 $exif = exif_read_data($image, 0, true);
    		 echo "<center>--------- $image ---------$compteur</center><br /><br />\n";
             echo "<table><tr><td>";
    		 foreach ($exif as $key => $section)
    		 {
    			foreach ($section as $name => $val)
    			{
    		// afficher les infos que l'on veut
    		// $key peut valoir : FILE, COMPUTED, IFD0, THUMBNAIL, COMMETN, EXIF
    		// syntaxe : if ( $key=="FILE" || $key=="COMPUTED" ) break; esle{blabla}
    				if( $key=="FILE" || $key=="COMPUTED" )break;
    				else
    				{
    		// meme test si l'on veut afficher certaines clés..$name=="blabla"
            echo '';
    				 echo "$name : $val<br />\n";
    		// rajouter $key. devant $name pour avoir le nom de la clé (inutil)
    		//}
    				}
    			}
    		 }
                //    echo "</td><td align=\"top\"><img src=\"$image\"></td>";
                //    echo "</tr></table>";
     
                $compteur=$compteur+1;
    		}
        }
     
    	?>
    si vous avez une idée, je suis prenneur... :p

    (a oui...aucun message d'erreur ni rien....)

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Points : 422
    Points
    422
    Par défaut
    Déjà, pour incrémenté on fait : $variable++;

    Et puis ton code est vraiment pas propre, j'arrive pas à le lire :o.
    Par contre je suis sur que tu peux ne faire qu'une boucle (ou deux max) si c'est bien pensé :p

  3. #3
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 476
    Points : 4 687
    Points
    4 687
    Par défaut
    Déjà, pour incrémenté on fait : $variable++;
    ca marche très bien $var=$var+1;
    ton code est vraiment pas propre
    je l'ai recopié vite fait pour avoir un apperçut.
    ne faire qu'une boucle
    j'ai expréssément rajouté une boucle.
    mais tout cela ne m'aide pas

  4. #4
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 476
    Points : 4 687
    Points
    4 687
    Par défaut
    c'est bon, probleme résolu...
    j'oubliait de fermer mon tableau (pour l'affichage)
    maintenant il m'affiche tout :p

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] Erreur dans Boucle
    Par mickado dans le forum Langage
    Réponses: 11
    Dernier message: 25/01/2007, 11h52
  2. Réponses: 3
    Dernier message: 04/08/2006, 19h24
  3. [Tableaux] Problème dans ma boucle
    Par Sandara dans le forum Langage
    Réponses: 29
    Dernier message: 28/06/2006, 11h34
  4. [Tableaux] DELETE dans une boucle
    Par mikedimoi dans le forum Langage
    Réponses: 5
    Dernier message: 15/01/2006, 18h16
  5. Réponses: 3
    Dernier message: 11/01/2006, 17h44

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