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 :

Reconstruire un tableau en remplaçant certains éléments


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 18
    Points : 14
    Points
    14
    Par défaut Reconstruire un tableau en remplaçant certains éléments
    Bonjour à tous,

    Je travaille actuellement sur un site de propositions et de partages d'activités en tout genre.
    les utilisateurs remplissent un formulaire avec leurs types d'activité favorites (foot, resto, couture...peu importe) et un "niveau" qui diffère suivant l'activité : soit apprendre/partager, soit chercher/proposer, soit débutant/moyen/bon si c'est une activité sportive par exemple.

    Avec cette liste de préférences, je vais chercher dans ma base les activités qui pourraient intéresser l'utilisateur. Pour ce faire j'ai 2 cas de figure :

    Si l'utilisateur à choisit "apprendre", je dois aller chercher les activités qui partagent, et inversement. (pareil pour "chercher"/"proposer").

    Si l'utilisateur a choisit un activité nécessitant un niveau précis (débutant, moyen ou bon), je vais aller chercher les activités avec un niveau similaire.

    Donc pour résumer :
    si "apprendre" >>> "Partager" et/ou inversement
    si "chercher" >>> "proposer" et/ou inversement
    si "bon" >>> "bon" (ou si moyen >>> moyen, débutant >>> débutant), donc là on recherche l'équivalence.

    voilà pour la logique.

    Donc en premier lieu je récupère la liste des favoris de l'utilisateur dans un tableau (en provenance de ma bd), par exemple pour un utilisateur x :
    mesFavs['Apprendre','Bon','Moyen','Proposer','Chercher','Débutant']

    Ce que je cherche à faire, c'est donc de recomposer ce tableau avec les bonnes valeurs, soit :
    mesFavs['Partager','Bon','Moyen','Chercher','Proposer','Débutant']

    Comment puis-je procéder pour modifier ce tableau ou pour en recréer un ?

    pour le moment j'en suis là :
    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
    $getUserFav = mysql_query("SELECT familleID, typeID, activiteID, niveauID, niveauNom FROM favoris WHERE userID = '$_userID' GROUP BY niveauNom HAVING COUNT(*)>=1") or die(mysql_error());
     
    while($row_userFav = mysql_fetch_assoc($getUserFav)) {
     
    	$userFavFamilleId = $row_userFav['familleID'];
    	$userFavTypeId = $row_userFav['typeID'];
    	$userFavActiviteId = $row_userFav['activiteID'];
    	$userFavNiveauId = $row_userFav['niveauID'];
    	$userFavNiveauNom = $row_userFav['niveauNom'];
     
     
    	$userFavActiviteArray[] = $row_userFav['activiteID'];			
    	$userFavTypeArray[] = $row_userFav['typeID'];	
    	$userFavFamilleArray[] = $row_userFav['familleID'];	
    	$userNiveauArray[] = $row_userFav['niveauNom'];	
    }	
     
    foreach($userNiveauArray as $userNiveau) {	
     
    		echo $userNiveau.'<br />';
    }
    J'ai tenté avec if/else sans succès et là je sais plus trop quoi faire en fait...

    Merci d'avance pour votre aide

    Olivier

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 18
    Points : 14
    Points
    14
    Par défaut solution !?
    bon j'ai trouvé une solution qui semble fonctionner :

    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
     
    foreach ($userNiveauArray as $k => &$item) {
     
    	if ($item == "Apprendre") {
    		$item = 'Partager';
    	} else if ($item == "Partager") {
    		$item = 'Apprendre';
    	}
     
    	if ($item == "Chercher") {
    		$item = 'Proposer';
    	} else if ($item == "Proposer") {
    		$item = 'Chercher';
    	}	
     
    }
     
     
    print_r ($userNiveauArray);
    Source : http://blog.satevis.fr/trucs-et-astu...et-foreach.htm

    bon bah si ça peut aider quelqu'un d'autre...

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

Discussions similaires

  1. Supprimer certains éléments d'un tableau
    Par Him dans le forum Langage
    Réponses: 7
    Dernier message: 29/10/2008, 01h56
  2. Afficher certains éléments d'un tableau.
    Par Olivier Regnier dans le forum Langage
    Réponses: 3
    Dernier message: 05/10/2008, 12h12
  3. Masquer certains éléments d'un tableau
    Par onirisme dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 04/12/2007, 17h01
  4. Réponses: 4
    Dernier message: 24/05/2007, 16h37
  5. Réponses: 1
    Dernier message: 15/12/2006, 14h53

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