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 :

debutant boucle while [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 86
    Par défaut debutant boucle while
    Bonjour à tous,

    Je suis grand débutant et après de nombreux tutos je n'arrive toujours pas à faire ce que je souhaite.

    J'explique:
    Je récupère les valeurs de ma base de donnée en utilisant la boucle WHILE.
    Je souhaiterai récupérer les valeurs dans un tableau après la fin de la boucle.
    Je n'ai pas encore compris comment le faire.

    et c'est la que je bloque.

    voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $sql = "SELECT N°Article, Qté FROM PiècesLignes WHERE N°Pièce=".$numero_piece." AND Type=0 ";	
    $requete = odbc_do($cnx,$sql);
     
    while(odbc_fetch_row($requete)) {
    $values = array();
    $values['N°Article'] = odbc_result($requete,'N°Article');
    $values['Qté'] = odbc_result($requete,'Qté');
    }
     
    	foreach ( $values as $key=>$numero ) {
    	echo $key;
    	echo $numero;
    	}
    echo $key; m'affiche une seule valeur
    echo $numero; m'affiche une seule valeur

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $values = array();
    while (odbc_fetch_row($requete))
    {
        $values[] = array(
            'num_article' => odbc_result($requete,'N°Article'),
            'qte'         => odbc_result($requete,'Qté')
        );
    }
    Vu que tu débutes, n'utilises jamais des nommage de ce genre : 'N°Article' ou encore 'Qté'. Jamais de caractères spéciaux ni accentués et de préférence toujours la même casse. Tu dois te limiter à a-z A-Z 0-9 _
    C'est valable pour tout le code comme pour la base de données pour les nommages

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 86
    Par défaut
    merci de te pencher sur mon problème.

    le problème ne viens pas de la boucle while qui fonctionne très bien mais c'est que je n'arrive pas à récupérer les valeurs en dehors parce que je n'ai pas compris comment faire.

    Concernant les caractères spéciaux, la base étant existante je ne peut pas modifier les noms des colonnes.

  4. #4
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    ta boucle while n'était pas bien codée...
    Pour récupérer les données, fais comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach ($values as $k => $v) 
    {
        echo $k, $v['num_article'], $v['qte'];
    }
    Bien que la base existe déjà, ce n'est pas la peine de propager la boulette des nommages à ton code PHP

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 86
    Par défaut
    j'ai modifié en fonction de ce que tu m'à proposé mais le résultat est le même.
    comment récupérer mes valeurs en dehors de la boucle foreach ?

    Je suis très grand débutant et je n'ai surement pas bien compris comment cela fonctionne.

    Ce que je souhaite c'est pouvoir afficher mes valeurs à différents endroits de ma page.

    exemple:

    a chaque article afficher son numéro et sa quantité, sachant que dans $values['N°Article'] j'ai 3 numéros et une quantité pour chaque numéro article
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <td>article N°1 $values['N°Article']</td>
     
    <td>Quantité $values['Qté']</td>
     
    <td>article N°2 $values['N°Article']</td>
     
    <td>Quantité $values['Qté']</td>
     
    <td>article N°3 $values['N°Article']</td>
     
    <td>Quantité $values['Qté']</td>

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 86
    Par défaut
    je viens de comprendre mon problème,
    pour afficher un N° article je dois d'abord le comparer avec les numéros de la base de données.

    merci de votre aide.

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

Discussions similaires

  1. [Debutant - Labview 8.6] Temps dans une boucle While
    Par jizzlobber dans le forum LabVIEW
    Réponses: 3
    Dernier message: 07/12/2009, 12h09
  2. [debutant] Boucle while
    Par w13winni dans le forum Langage
    Réponses: 3
    Dernier message: 30/03/2009, 20h00
  3. [Debutant/WinAPI] Souci avec boucle While et GetMessage()
    Par SnowStyle dans le forum Windows
    Réponses: 11
    Dernier message: 15/10/2005, 20h19
  4. [MFC] Dialog dans une boucle while
    Par oxor3 dans le forum MFC
    Réponses: 5
    Dernier message: 23/04/2004, 23h51
  5. [débutant]Documentation? boucle "while"? Session?
    Par o151181 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 19/01/2004, 16h20

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