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

Zend PHP Discussion :

Zend studio erreur sur while


Sujet :

Zend PHP

  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut Zend studio erreur sur while
    Bonjours,

    Voila a quoi ressemble ma condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while ($row = $conn->tableauAssoc()) { 
     //............//
    }
    Donc zend studio me retourne cette avertissement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Asignment in condition

    Pour pallier a ce problème, je fais sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $row = $conn->tableauAssoc();
     
    while ($row) {
    $row = $conn->tableauAssoc();
     //............//
    }
    Maintenant le probleme, c'est que ma boucle enleve un resultat a retourné, donc a la place d'avoir sa :
    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
     
    ############
    #  ID  #  valeur   # 
    ############
    #   1   #  test 1   #
    #   2   #  test 2   #
    #   3   #  test 3   #
    #   4   #  test 4   #
    #   5   #  test 5   #
    #   6   #  test 6   #
    #   7   #  test 7   #
    #   8   #  test 8   #
    #   9   #  test 9   #
    #   10 #  test 10 #
    ############

    J'ai sa :
    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
     
    ############
    #  ID  #  valeur   # 
    ############
    #   1   #  test 1   #
    #   2   #  test 2   #
    #   3   #  test 3   #
    #   4   #  test 4   #
    #   5   #  test 5   #
    #   6   #  test 6   #
    #   7   #  test 7   #
    #   8   #  test 8   #
    #   9   #  test 9   #
    #   10 #             #
    ############
    Donc comme on peut le voir, la valeur du 10eme index (test 10) ne s'affiche plus.

    Pourquoi ?

    J'utilise ODBC, mais le resultat est le meme sur PDO.

    Merci

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Woww tu vas devoir utiliser un do/while pour ne pas perdre le premier $row ;-)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    do {
        $row = $conn->tableauAssoc();
        if ( $row ) {
     
        }
    } while ( $row ) ;
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par thebarbarius Voir le message
    Voila a quoi ressemble ma condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while ($row = $conn->tableauAssoc()) { 
     //............//
    }
    Donc zend studio me retourne cette avertissement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Asignment in condition
    Et sinon si tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while (($row = $conn->tableauAssoc()) != FALSE) {
    Il aime toujours pas ?
    (remplace FALSE pas ce qui convient)
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    c'est soit disant parce que tu pourrais faire une erreur de condition

  5. #5
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Merci,

    Oui en effet c'est a cause des erreur trop frequente du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (1 = 1):  endif;
    seb.

    Je perds peut etre le while mais je le recupere ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $row = $conn->tableauAssoc();
     
    while ($row) {
    $row = $conn->tableauAssoc();
     //............//
    }
    Sa marche quand ou pas ?
    Ou sa requiert tous de meme un do while.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    while (($row = $conn->tableauAssoc()) != FALSE) {
    c'est pas plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    while (($row = $conn->tableauAssoc()) !== FALSE) {

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Sa marche quand ou pas ?
    Ben tu ne traites pas le 1er $row

    c'est pas plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while (($row = $conn->tableauAssoc()) !== FALSE) {
    Pourquoi pas si $conn->tableauAssoc( ) retourne strictement FALSE à la fin de son itération.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    apres si t'es sur PDOp as besoin de while pour le statement est un Traversable un foreach dessus suffis

  8. #8
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Si j'ai besoin du while.

    Bon je vais essayer le do while pour voir.

  9. #9
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par thebarbarius Voir le message
    Si j'ai besoin du while.

    Bon je vais essayer le do while pour voir.
    oublie pas que c'est juste un avertissement de zend studio mais en aucun cas une erreur de php

    la syntaxe a adopter (pour zend studio) est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    while (($row = $conn->tableauAssoc()) != false)
    // pas de comp strict ici
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $row = $conn->tableauAssoc();
    while ($row)
    pour le do...while le probleme sera le meme

  10. #10
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Je sais bien que la zyntax est exact, mais c'est assez penible de voir cette partout, surtout quand tu debug.

    Merci stealth c'est resolue.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 23/01/2020, 09h34
  2. Erreur annoncé par Zend Studio
    Par snyfir dans le forum Zend Studio
    Réponses: 4
    Dernier message: 02/08/2009, 12h46
  3. Votre avis sur Zend Studio for Eclipse 6.1 ?
    Par Yogui dans le forum Eclipse PHP
    Réponses: 5
    Dernier message: 06/05/2009, 15h07
  4. Erreur avec tutoriel "Tutoriel Zend Studio for Eclipse"
    Par ettaieb dans le forum Zend Framework
    Réponses: 1
    Dernier message: 10/02/2009, 09h55
  5. Zend Studio + CVS + source fichiers sur FTP
    Par ronio dans le forum Zend Studio
    Réponses: 2
    Dernier message: 08/12/2006, 09h56

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