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 :

Comment incrémenter une liste en PHP ?


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut Comment incrémenter une liste en PHP ?
    Bonjour à tous,

    Je cherche à afficher une liste numérotée en php.
    Autant il n'y a pas de problème pour créer ma requête php / mysql, autant je ne sais pas comment numéroter automatiquement ma liste.

    Puis-je avoir un peu d'aide ?
    Voici mon code pour ma requête :

    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
    <? 	//ACTU
    		$topagenda = getAgendaTop(0,9,$idSecteur);								
    		while( $topagendadata = mysql_fetch_array($topagenda)) {
    		$date = $topagendadata['SOIREE_DATE'];	
    		list($year, $month, $day) = explode("-", $date);
    		$months = array("janvier", "f&eacute;vrier", "mars", "avril", "mai", "juin",
    "juillet", "ao&ucirc;t", "septembre", "octobre", "novembre", "d&eacute;cembre");
    		$joursem = array('dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi');
    		$timestamp = mktime (0, 0, 0, $month, $day, $year);	
    		?>
     
    <div id="top-accueil-bloc-left-contenu">
     
    <div id="top-accueil-bloc-left-img">        
    <?PHP	if($topagendadata['SOIREE_IMAGE'] != "")
    {
    ?>
    <a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><img src="/coope/agenda/<? echo($topagendadata['SOIREE_IMAGE']) ?>" title="<? echo($topagendadata['SOIREE_TITLE']) ?>" alt="<? echo($topagendadata['SOIREE_TITLE']) ?> - <? echo($topagendadata['SOIREE_LIEU'] )?> - <?  echo(getVilleFromId($idSecteur)) ?>" width="75px"/></a>
     
    <?php
    } else if(empty($topagendadata['SOIREE_IMAGE'])) {
    if($topagendadata['ETABLISSEMENT_IMAGE'] != "")
    {
    ?>
    <a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><img src="/images/etablissement/<? echo($topagendadata['ETABLISSEMENT_IMAGE']) ?>" title="<? echo($topagendadata['SOIREE_TITLE']) ?>" alt="<? echo($topagendadata['SOIREE_TITLE']) ?> - <? echo($topagendadata['SOIREE_LIEU'] )?> - <?  echo(getVilleFromId($idSecteur)) ?>" width="75px"/></a>
    <?php
    }
    else 
    {
    ?>
    <a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><img src="/coope/agenda/Nightfever_fr_logo.jpg" width="75" title="<? echo($topagendadata['SOIREE_TITLE']) ?>" alt="<? echo($topagendadata['SOIREE_TITLE']) ?> - <? echo($topagendadata['SOIREE_LIEU'] )?> - <?  echo(getVilleFromId($idSecteur)) ?>"</a>
    <?php } } ?>  
    </div>      
     
    <div id="top-accueil-bloc-left-block">
     
    <div id="top-accueil-bloc-left-title">        
    <a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><? echo($topagendadata['SOIREE_TITLE']) ?></a>
    </div>
     
    </div>
     
    </div>
     
    <?php }?>
    Merci par avance,

    Aurélien

  2. #2
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    bonjour,

    Qu'entends-tu exactement par 'numéroter ta liste' ?

  3. #3
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Avec le code fourni, j'arrive pas bien à comprendre ce que tu cherches à numéroter (j'ai pas tellement le temps de plonger dedans non plus...)

    En revanche, tu peux regarder du coté de range et de array_combine, ça te donnera de bonne idées.

  4. #4
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 387
    Points
    9 387
    Par défaut
    J'ai franchement pas compris.
    Alors voici comment numéroter en utilisant une boucle de même type :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $i = 0;
    while($topagendadata = mysql_fetch_array($topagenda))
    {
      echo 'Numéro : ' . $i . '<br />';
      $i++;
    }

  5. #5
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut
    Merci pour vos réponses.

    En fait je veux juste faire une liste des articles les + vues sur mon site du type :

    1. Article 1
    2. Article 2
    3. Article 3


    Je sais faire l'affichage du nom des articles mais je ne sais pas comment faire apparaitre les numéros et comment les incrémenter automatiquement devant le nom des articles.

    Une piste ?

    Merci par avance,

    Aurélien

  6. #6
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    Il faut que tu utilises la solution de transgohan :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $i = 1;
    while($topagendadata = mysql_fetch_array($topagenda))
    {
      echo 'Numéro : ' . $i . $topagendadata[''];
      $i++;
    }

  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 727
    Points
    10 727
    Par défaut
    rien a voir avec PHP c'est du HTML ça, regarde du coté de des listes type <ol>

  8. #8
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    rien a voir avec PHP c'est du HTML ça
    Pourquoi HTML uniquement?
    Faisable en php ou html. Pour ma part tout dépend des compétences et du temps.

  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 727
    Points
    10 727
    Par défaut
    Citation Envoyé par okoweb Voir le message
    Pourquoi HTML uniquement?
    Faisable en php ou html. Pour ma part tout dépend des compétences et du temps.
    ça sert a rien de simuler en PHP ce qu'on peux faire en HTML, il montre explicitement qu'il veut faire une liste du type <ol>

    donc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <ol>
       </li>Element</li>
       </li>Element</li>
       </li>Element</li>
    </ol>

  10. #10
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut
    Merci pour vos réponses.

    J'ai tenté de le faire avec les balises HTML mais à priori ça ne fonctionne pas

    Est-ce que mon code vous semble correct ?

    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
    <ol>
    <? $topagenda = getAgendaTop(0,5,$idSecteur);								
    while( $topagendadata = mysql_fetch_array($topagenda)) {	
    ?>
     
    <div id="top-accueil-bloc-left-contenu">  
     
    <div id="top-accueil-bloc-left-title">        
    <a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><li><? echo($topagendadata['SOIREE_TITLE']) ?></li></a>
    </div>    
     
    </div>
     
    <?php }?>   
    </ol>
    Merci par avance,

    Aurélien

  11. #11
    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 727
    Points
    10 727
    Par défaut
    oula non, les éléments de listes c'est <li> comme dans l'exemple que j'ai monter, je te conseil d'apprendre la base du HTML avant de faire du PHP

  12. #12
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut
    J'ai effectivement des lacunes que je tente de combler ... désolé.

    Dans mon bout de code j'ai bien placé le <li> mais je ne sais pas si je l'ai mis au bon endroit.

    Quelle serait la bonne façon de procéder ?

    Merci de m'aider à progresser

    Aurélien

  13. #13
    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 727
    Points
    10 727
    Par défaut
    montre ce que t'as fait avec les <li>

  14. #14
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut
    Voila 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <ol>
    <? 	//ACTU
    		$topagenda = getAgendaTop(5,5,$idSecteur);								
    		while( $topagendadata = mysql_fetch_array($topagenda)) {
    		$date = $topagendadata['SOIREE_DATE'];	
    		list($year, $month, $day) = explode("-", $date);
    		$months = array("janvier", "f&eacute;vrier", "mars", "avril", "mai", "juin",
    "juillet", "ao&ucirc;t", "septembre", "octobre", "novembre", "d&eacute;cembre");
    		$joursem = array('dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi');
    		$timestamp = mktime (0, 0, 0, $month, $day, $year);	
    		?>
     
    <div id="top-accueil-bloc-left-contenu">  
     
    <div id="top-accueil-bloc-left-title">        
    <li><a href="/<? echo($topagendadata['EVENEMENT_TYPE_URL']) ?>_<?  echo(getVilleFromId($idSecteur)) ?>/<? echo($topagendadata['SOIREE_URL_TITLE']) ?>_<? echo($topagendadata['ETABLISSEMENT_URL_NAME'] )?>_<? echo($day)?>-<? echo($months[$month-1])?>-<? echo($year)?>_<? echo($topagendadata['SOIREE_ID']) ?>_description.html" title="<? echo($topagendadata['SOIREE_TITLE']) ?>"><? echo($topagendadata['SOIREE_TITLE']) ?></a></li>
    </div>
     
     
    </div>
     
    <?php }?>   
    </ol>

  15. #15
    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 727
    Points
    10 727
    Par défaut
    mais y'a pas de <div> dans les <ol> c'est que des <li>,
    pour tes date en français utilise strftime ou mieux IntlDateFormatter, et inutile de redéfinir tes array a chaque tour de boucle
    pour tu ouvres ton php avec <? et plus loin avec <?php ?
    c'est très brouillon tous ça

  16. #16
    Membre régulier
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Août 2010
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Août 2010
    Messages : 216
    Points : 96
    Points
    96
    Par défaut
    Merci pour tes conseils, je me vais regarder de plus près pour les dates.
    En effet je suis autodidacte et je reconnais que c'est assez brouillon ... mais je vais m'améliorer.

    Concernant ma liste j'ai réussi à faire ce que je voulais avec la solution de Transgohan.

    Merci à tous pour votre aide.

    Aurélien

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

Discussions similaires

  1. Comment créer une liste dynamique en PHP ?
    Par geeka dans le forum Langage
    Réponses: 3
    Dernier message: 20/04/2015, 15h45
  2. Comment faire une liste d'image de choix ?
    Par poussinphp dans le forum Composants VCL
    Réponses: 4
    Dernier message: 01/10/2005, 00h34
  3. Réponses: 5
    Dernier message: 29/09/2005, 14h37
  4. Comment initialiser une liste de composants avec une boucle ?
    Par EricSid dans le forum Composants VCL
    Réponses: 5
    Dernier message: 06/04/2005, 18h46
  5. [PDFBox]Comment manipuler une LIST
    Par marcotop dans le forum Documents
    Réponses: 11
    Dernier message: 27/08/2004, 15h46

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