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] Garder la dernière position d'un shuffle sur un tableau


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut [Tableaux] Garder la dernière position d'un shuffle sur un tableau
    Bonjour,
    Je suis désolé ca fait plusieurs jours que je cherche mais je n'y arrive pas et je pense que c'est simple à faire.
    J'effectue un shuffle sur un tableau associatif.
    Quand l'utilisateur vient pour la 1° fois sur la page le tableau fait son shuffle si il revient je voudrait garder la dernière position du shuffle dans un tableau.
    Pour ne pas mélanger les clefs du tableau j'utilise une fonction.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function shuffle_assoc(&$array) { 
        if (count($array)>1) { //$keys needs to be an array, no need to shuffle 1 item anyway
          $keys = array_rand($array, count($array));
          foreach($keys as $key)
          $new[$key] = $array[$key];
          $array = $new;  
        }
     
        return true;
    }
    Voici comment je voudrais remplir mon tableau qui conserve le dernier shuffle mais à mon avis je ne m'y prend pas de la bonne façon:
    (de tte façon la première fois "e" ne sera pas là, mais dès que la navigation commence il est présent)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $stock_port=array();
    $stock_paysage=array();
    if(!isset($_GET['e'])){
        $stock_port[]=shuffle_assoc($array_img_portrait);
        $stock_paysage[]=shuffle_assoc($array_img_paysage);
    }else{
        $array_img_portrait=$stock_port;
        $array_img_paysage=$stock_paysage;
    }
    Si quelqu'un a une solution ou une idée je suis preneuse.
    Merci

  2. #2
    Membre averti Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Points : 368
    Points
    368
    Par défaut
    Bonjour,

    je n'ai pas tout compris mais à priori tu voudrais conserver ton tableau entre les pages, pour ça tu peux le stocker dans une variable de session :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    sssion_start();
     
    if(!isset($_SESSION['tableau'])) {
     
     $tab = array("c1" , "c2", "c3");
     shuffle_assoc($tab);
     $_SESSION['tableau'] = $tab;
     
     
    }
     
    ?>
    , pour le reste je n'ai pas trés bien compris, peux-tu expliquer ce que tu veux que ton traitement fasse.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Oui mais dans ce cas là, je conserve l'ordre de mon tableau initial.
    Dans ta session, tu n'enregistres pas le tableau qui a eu le shuffle mais celui qui était classé "par ordre alphabétique"
    Peut être que je me trompe, je vais tester

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup je sais pas quoi dire ca marche!
    Ca fait juste 2 semaines que je suis dessus j'avais pensé aux sessions mais je voulais faire qqchose de plus simple avec une variable.
    En tout cas merci, je suis juste deg de ne pas y avoir pensé avant

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 15/12/2008, 13h22
  2. Insertion d'une nouvelle feuille(onglet) Excel à la dernière position
    Par Anaz[o]rium dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 08/10/2007, 16h41
  3. Garder Taille et positions des fenetres
    Par Cazaux-Moutou-Philippe dans le forum Mandriva / Mageia
    Réponses: 1
    Dernier message: 05/07/2007, 21h04
  4. comparaison du contenu de 2 tableaux indifféremment de la position des éléments
    Par delma dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 16/11/2006, 15h07
  5. Réponses: 3
    Dernier message: 06/04/2006, 16h09

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