leditvalentin Posté 5 Mai 2011 Posté 5 Mai 2011 (modifié) Bonjour à tous, J'utilise la fonction switch pour modifier les icones de mes dossiers en fonction du nom du dossier : switch ($nom) { case "Agenda" : $picto= "agenda"; break; case "^FS" : $picto= "fichiersource"; break; default : $picto= "big"; break; Comment faire pour lui demander de changer l’icône du dossier à partir du moment ou il y à FS dans le nom ? J'ai essayé de cette manière : "^FS$" mais ça ne fonctionne pas. Auriez vous une solution ? Merci d'avance Cordialement Modifié 5 Mai 2011 par leditvalentin
captain_torche Posté 5 Mai 2011 Posté 5 Mai 2011 Je ne crois pas que tu puisses le faire. Si tu veux continuer à utiliser switch, tu devras faire une condition supplémentaire après ta boucle, qui testera le nom de la boucle.
leditvalentin Posté 5 Mai 2011 Auteur Posté 5 Mai 2011 tu devras faire une condition supplémentaire après ta boucle, qui testera le nom de la boucle. Je ne maitrise pas vraiment le php, pouvez vous m'expliquer plus précisément ce qu'il faudrait que je fasse ? Merci d'avance
captain_torche Posté 5 Mai 2011 Posté 5 Mai 2011 Après ton switch, utilise une condition (avec l'instruction if), et vérifie le contenu de ta variable avec la fonction strpos().
leditvalentin Posté 5 Mai 2011 Auteur Posté 5 Mai 2011 Je ne suis pas du tout utilisateur de php, j'ai donc lu des manuels sur le net pour faire ce que vous m'avez indiqué, est ce juste ? $cherche = strpos (string $nom, "FS");if ($cherche === false) {switch ($nom) {$picto= "fichiersource"; break;}switch ($nom) { case "Agenda" : $picto= "agenda"; break; default : $picto= "big"; break;
captain_torche Posté 5 Mai 2011 Posté 5 Mai 2011 Pas vraiment, non, il vaudra mieux faire quelque chose comme ça : switch ($nom) { case "Agenda" : $picto= "agenda"; break; default : $picto= "big"; break;}if(strpos($nom, 'FS') !== false) $picto = 'fichiersource'; PS : n'oublie pas de fermer tes boucles switch, il y manque systématiquement l'accolade fermante !
leditvalentin Posté 5 Mai 2011 Auteur Posté 5 Mai 2011 (modifié) Merci beaucoup, ca fonctionne parfaitement. Je vais faire attention à bien refermer les }. Bonne journée Cordialement P.S : on peut mettre résolu sur le titre du post ? Modifié 5 Mai 2011 par captain_torche Inutile de citer le message précédent; on vient de le lire
captain_torche Posté 5 Mai 2011 Posté 5 Mai 2011 Pas de quoi. Sinon non, on n'a pas pour habitude d'éditer les titres des posts : ça pourrait décourager d'éventuelles réponses à quelqu'un qui aurait fait remonter le post pour un problème similaire.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant