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] Boucle oui mais comment


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut [Tableaux] Boucle oui mais comment
    Bonjour.
    Voici mon problème.

    Je génère par un foreach une boucle qui reproduit ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <ul id="mainNav" class="fiveStep">
          <li class="lastDone">xvxcvxcvxcvxvcx</li>
          <li class="current">xcvxcvxcvxcv</li>
          <li><a title="">xcvxvcxcvx</li>
          <li><a title="">xvxvxvxcvcxvxc</li>
          <li class="mainNavNoBg">xvxcvxcvxc</li>
    </ul>
    Cependant a chaque passage dans la boucle faudrait que la class des li se décale

    La deuxième fois ca devrait être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <ul id="mainNav" class="fiveStep">
          <li class="done">xvxcvxcvxcvxvcx</li>
          <li class="lastDone">xcvxcvxcvxcv</li>
          <li class="current"><a title="">xcvxvcxcvx</li>
          <li><a title="">xvxvxvxcvcxvxc</li>
          <li class="mainNavNoBg">xvxcvxcvxc</li>
    </ul>
    Ainsi de suite.
    Et la sur le coup j'ai le cerveau qui n'arrive pas à s'en sortir.

    Merci bien.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 199
    Points : 116
    Points
    116
    Par défaut
    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
    for( $i=0 ; $i<nbrTours ; $i++ )
    {
      echo '<ul>';
     
      for( $j=0 : $j<5 ; $j++ )
      {
        $offset = $i + $j;
        if( $offset > 4 )
        {
           $offset = $offset - 5*((int)($offset/5));
        }
        echo '<li class="'.classNames[$offset].'"></li>';
      }
     
      echo '</ul><br/><br/>';
    }

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    Il te suffirat d'avoir un array ordonné comme il faut au départ ...

    après le premier passage, tu fais un array_unshift
    qui viens positionner le nouvel émément en debut d'array ...

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    Merci à vous.
    Je vais réfléchir a tout ca et je reviens si il le faut.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Oui comme le dit Spacefrog tu pourrais faire une rotation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      	$class = array("done", "lastDone", "", "current", "mainNavNoBg");
      	array_unshift($class, array_pop($class));

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Il te suffirat d'avoir un array ordonné comme il faut au départ ...

    après le premier passage, tu fais un array_unshift
    qui viens positionner le nouvel émément en debut d'array ...
    Nickel ça marche bien.
    Merci aussi à SpaceFrog.

    EDIT : et merci aussi à batataw, j'ai fait plus ou moins ce que tu as écrit

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

Discussions similaires

  1. [Winsock] Un chat, oui, mais comment ?
    Par Jihnn dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 17/02/2007, 04h09
  2. [Système] LA OOP, oui mais comment concrètement ?
    Par HALOMOTO dans le forum Langage
    Réponses: 2
    Dernier message: 05/10/2006, 17h43
  3. [Tableaux] [validation] Oui mais jusqu'à où
    Par ozzmax dans le forum Langage
    Réponses: 3
    Dernier message: 02/10/2006, 17h02
  4. Les Sprites oui, mais comment?
    Par tametale dans le forum Développement 2D, 3D et Jeux
    Réponses: 16
    Dernier message: 19/06/2006, 09h11
  5. HomeDB, oui mais comment ?
    Par Gregouz dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 27/10/2004, 15h27

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