28172 sujets

CSS et mise en forme, CSS3

Bonjour ^^

Je suis en train de m'arracher les cheveux sur un truc pour mon stage ... Ils veulent que l'utilisateur ne puisse pas accéder a un certain menu s'il n'est pas identifié. Je sais comment masquer ce menu, mais je ne sais pas du tout comment spécifier que ca doit l'etre lorsque l'on n'est pas loggué ...

Est-ce que vous auriez quelque chose a me suggérer ? =(

Merci d'avance !!
Modifié par Aemilia (21 Jul 2009 - 12:12)
Normalement tu gères le login d'un utilisateur via PHP donc c'est plutôt à ce niveau qu'il faut regarder.

Ce peut être au niveau du html de ton menu où via PHP tu contrôle si ton utilisateur est logué (cookie, session...) et en quel cas tu affiches la partie du menu à masquer si l'utilisateur n'est pas logué.
C'est exactement ce que je me suis dit mais ils veulent absolument du css ... Un collegue m'a envoyer ce qu'il avait reussi a faire sur une autre page :


.header .userAuth a.userLogout,
.header .userAuth a.userLogin {

	[code en css]

}


Donc ca a priori ca marche mais j'ai passe la matinee a comprendre comment et ensuite ce que ca faisait exacement ... Smiley ohwell

J'ai essaye des recherches google aussi mais ca n'a rien donne ... Smiley bawling
à priori je ne vois pas comment ça pourrait faire ce que tu demandes o_O

Là il s'agit d'un ciblage d'un lien dont la classe est userLogout ou userLogin dans un élément dont la classe est userAuth lui même dans un élément dont la lasse est header.

Je vois donc pas comment cela peut contrôle si ton utilisateur est logué.


D'ailleurs je ne vois pas comment tu peux faire ce que tu demandes avec uniquement du CSS...
Je trouve aussi que ca releve de la magie ...

Le collegue a l'air ultra sur de lui et je ne suis que stagiaire donc bon ... On utilise Deki Wiki pour notre site, perso j'en avais jamais entendu parler avant de venir ici [stage en afrique]. Je me suis dit peut-etre que c'est tres tres tres fort et qu'avec la bonne syntaxe, il fait des choses que l'on coderait plutot en php (avec variable de session tout ca).

Enfin bon, ca m'enerve ^^

J'ai teste en rajoutant " a.userLogout " a ce que je dois faire disparaitre, ca marche a moitie : le menu disparait que l'on soit loggue ou pas ...

P.S : Desolee si tu trouves que je donne les infos au compte goutte, week-end de degustation de vins, lundi difficile ...
Deki Wiki est un CMS donc tu dois avoir une syntaxe différente du CSS standard et avec des fonctionnalités avancées.

Il te faut regarder du côté de la documentation de Deki Wiki.
Alors en fait, il faut distinguer deux choses : l'apparence du deki et son contenu. L'apparence se modifie avec du CSS classique, le contenu par contre se gere autrement. Je travaille bien sur l'apparence du deki la ...
J'aurai tendance à penser que le lien de login/logout et construit dynamiquement et est référencé par une classe au nom correspondant userLogout ou userLogin suivant la situation.

Donc après on gère en fonction du nom de classe affiché.

Mais après ce n'est qu'une supposition, je ne connais pas Deki Wiki.
C'est juste impossible de faire ça en css, il faut que quelque part le php définisse le fait que l'user est loggé ou pas, css ne trouvera jamais cette info car il ne sert pas à ça.

Essaie d'avoir plus d'infos de la part de ton collègue car clairement ils ne t'ont pas tout dit. Smiley smile
Ok donc mon collegue a trouve quelque chose et ca marche tres bien, je le poste ici au cas ou quelqu'un en aurait besoin un jour ^^

html body div.body div.page div.siteNav {
    display:none;
}

html body.user-loggedin div.body div.page div.siteNav {
    display:block;
}


Bon je vais essayer d'expliquer, div.siteNav etait ce que je voulais cacher. Il est contenu dans le div page, lui-meme dans body compris dans les balises body et enfin html. Bref, faut bien lui donner le chemin complet.

Par defaut, la zone est cachee. Quand un utilisateur se loggue, on entre dans le deuxieme cas de figure et euh c'est magique.

Voili voilou ^^"


P.S : Comment qu'on fait pour mettre le sujet en resolu ? ...
Modifié par Aemilia (21 Jul 2009 - 11:06)
Vu la solution c'est donc bien le CMS qui gère l'état logué ou non en ajoutant la classe "user-loggedin" au body quand l'utilisateur est logué.

Mais c'est donc une solution propre à ce CMS, ça ne s'adapte pas à d'autres cas de figure.


Pour éditer le titre du sujet il te suffit d'étiter ton premier message pour pouvoir modifier le titre Smiley cligne