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 :

incrementer un entier dans fetch


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut incrementer un entier dans fetch
    Bonjour,
    J'ai codé en php (sur un hébergement Free) une boucle While qui récupère toutes les données d'un tableau.
    A chaque ligne de mon tableau je dois voir s'incrémenter le i de l'id pour obtenir ceci :
    Code html : 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
     
    <tr  class="rollover">
        <td>T. WILLIAMS</td>
        <td>Ad Lorem</td>
        <td><a href="#" id="1" onclick="return false;">Soudain l’été dernier</a></td>
        <td>1958</td>
      </tr>
      <tr>
        <td>T. WILLIAMS</td>
        <td>Ad Lorem</td>
        <td><a href="#" id="2" onclick="return false;">Un tramway nommé désir</a></td>
        <td>1947</td>
      </tr>
      <tr>
        <td>T. WILLIAMS</td>
        <td>Ad Lorem</td>
        <td><a href="#" id="3" onclick="return false;">Portrait d'une Madone</a></td>
        <td>1946</td>
      </tr>
      <tr>
        <td>T. WILLIAMS</td>
        <td>Ad Lorem</td>
        <td><a href="#" id="4" onclick="return false;">Propriété condamnée</a></td>
        <td>1946</td>
      </tr>

    voici mon code php de base :
    Code php : 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
     
    while($data = mysql_fetch_assoc($req))
        {
            echo'<tr class="rollover"><td>';
            echo utf8_encode($data['auteur']);
            echo'</td>';
     
            echo'<td>';
            echo utf8_encode($data['metteurenscene']);
            echo'</td>';
     
            echo'<td><a href="#" id="1" onclick="return false;">';
            echo utf8_encode($data['piece']);
            echo'</a></td>';
     
            echo'<td>';
            echo utf8_encode($data['an']);
            echo'</td></tr>';
        }
    Comment faire pour instancier i (id)? merci beaucoup

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $i = 0;
    while($data = mysql_fetch_assoc($req))
        {
            $i++;
    ...
            echo'<td><a href="#" id="'.$i.'" onclick="return false;">';
    ...
        }

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut
    Ah si ça fonctionne, j'avais rajouter le chiffre 1 accidentellement, grand merci

  4. #4
    Invité
    Invité(e)
    Par défaut
    Tu as laissé le 1....

    ....ouvre les deux yeux.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Tu as laissé le 1....
    oui idiot que je suis !!!

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 579
    Points : 804
    Points
    804
    Par défaut
    Si ton problème est résolu, marque le comme résolu.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut
    je déterre un vieux sujet mais je voudrais savoir si cette syntaxe est bonne en PHP ?

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    $i=1;
     
    while($data= $req->fetch()){
     
    $i++;
     
    echo '<h3>' .$data['titre'.$i]. '</h3>';
     
    }

    Merci !

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut explications
    En d'autres mots je voudrais déclarer une variable $i; que j'incrémente $i++; jusque 5 pour obtenir ceci :
    Code PHP : 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
     
    //Traitement des données
    while($data= $req->fetch()){
     
            echo'<h3>'.$data['titre1'].'</h3>';
     
            echo ($data['piece1']);
     
    	 echo'<h3>'.$data['titre2'].'</h3>';
     
    	echo ($data['piece2']);
     
    	echo'<h3>'.$data['titre3'].'</h3>';
     
    	echo ($data['piece3']);
     
    	echo'<h3>'.$data['titre4'].'</h3>';
     
    	echo ($data['piece4']);
     
    	echo'<h3>'.$data['titre5'].'</h3>';
     
    	echo ($data['piece5']);
    }
    Merci beaucoup

  9. #9
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    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
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    salut,

    si tu avais 100 valeurs, ça pourrait se comprendre mais juste 5, tu peux les coder en dur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //Traitement des données
    while ($data = $req->fetch()) {
        echo <<<html
    <h3>{$data['titre1']}</h3>{$data['piece1']}
    <h3>{$data['titre2']}</h3>{$data['piece2']}
    <h3>{$data['titre3']}</h3>{$data['piece3']}
    <h3>{$data['titre4']}</h3>{$data['piece4']}
    <h3>{$data['titre5']}</h3>{$data['piece5']}
    html;
    }
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    while ($data = $req->fetch()) {
        for ($i = 1 ; $i < 6 ; ++$i) {
            echo <<<html
    <h3>{$data["titre{$i}"]}</h3>{$data["piece{$i}"]}
    html;    
        }
    }
    Pense quand même à échapper tes données avec htmlspecialchars()

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2014
    Messages : 50
    Points : 39
    Points
    39
    Par défaut
    finalement avec cette syntaxe ça marche aussi...

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
            for($i=1;$i<6;$i++){
     
    		echo'<h3>'.$data["titre{$i}"].'</h3>';
    		echo ($data["piece{$i}"]);
     
    	}
     
    	}

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

Discussions similaires

  1. Ajout entier dans liste
    Par goutbouyo dans le forum Windows
    Réponses: 3
    Dernier message: 20/08/2004, 21h54
  2. Sélectionner tous les entiers dans une fourchette
    Par ludo.guy dans le forum Langage SQL
    Réponses: 5
    Dernier message: 16/07/2004, 09h15
  3. Réponses: 4
    Dernier message: 23/06/2004, 09h51
  4. [langage] incrementation de variable dans une boucle
    Par mimilou dans le forum Langage
    Réponses: 15
    Dernier message: 16/04/2004, 13h23
  5. [XSL] Tester si la valeur est un entier dans un xml
    Par MrMaze dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/07/2003, 04h35

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