5568 sujets

Sémantique web et HTML

Bonjour,
je suis en train de développer une page web et je voudrais faire la chose suivante:

j'ai un menu dans ma page web, qui contient des liens.
Sauf que je veux que ces liens soient clicables que par une certaine cathégorie d'utilisateurs et pas par tout le monde.
comment peut faire ça?
merci d'avance!
Bonjour,

cela peut se faire par l'ajout d'un attribut "class" à tes liens, que tu renseigne selon le type d'utilisateur que tu identifie.

Maientenant il faut evidemment que tu ai un mécanisme pour savoir la catégorie de l'utilisateur
kemar a écrit :
Bonjour,
cela peut se faire par l'ajout d'un attribut "class" à tes liens, que tu renseigne selon le type d'utilisateur que tu identifie.


Cela va juste griser les liens.

De la question, je comprends qu'il veut de plus que ces liens ne soient pas accessibles (donc au final, pas des liens).

Pour arriver à cela, il faut que le menu soit créé dynamiquement (ASP, PHP...) et que selon le type d'utilisateur il soit écrit un truc du genre
(très simplifié)


<?php 
if (utilisateur="???") {
echo '<p class="autorise"><a href="url"...>option menu </a>';
} else {
echo '<p class="nonautorise">option menu</a>';
}


Sinon tu peux aussi définir deux div et tu afficheras l'une ou l'autre selon le type par exemple...

Mais l'important c'est que le code est différent entre les deux cas, ce n'est pas juste un grisage façon langage de programmation en changeant l'état lock/unlock du menu...
Salut,

perso j'utilise a peu pres la meme methode que Bob dont voici un extrait (sans les fautes Smiley cligne hein Bob ^^)


<?php if($utilisateur==1) { ?>
<a href="mon lien">titre</a>
<?php } ?>


C'est tout. Car perso je ne vois pas l'interet d'afficher un paragraphe contenant un lien pour ensuite le cacher avec le css. D'autant plus que le lien et visible dans le code source...
De plus, un lien désactivé par je ne sais quelle petite magouille reviendrait au meme : lien visible dans le code source.
Mon conseil perso (ca n'engage que moi) :

- soit tu n'affiche tout simplement pas le lien
- soit tu l'affiches mais tu fais un test sur l'utilisateur au niveau de la page de destination du lien (href). Au pire, si tu veux indiquer que le gars n'aura pas acces à cette page s'il clicke car son acces est testé sur la page de destination, tu peux très bien jouer sur le nom de la classe du lien en faisant ceci par exemple :


<?php if($utilisateur==1) { ?>
<a class="lien_ok" href="lien">titre</a>
<?php } else { ?>
<a class="lien_pasok" href="lien">titre</a>
<?php } ?>


et dans ton css tu mets des couleurs differentes pour ton lien et c'est tout Smiley cligne

Voilou !

bon courage Smiley cligne
@++
Modifié par zax-tfh (30 Jun 2006 - 15:03)
Je vote pour ne pas mettre de lien tout simplement.
A quoi ça sert de mettre un lien pour faire atterrir le visiteur sur une page "vous n'avez pas l'autorisation de ... " ?C'est un clic inutile de trop.
QuentinC : pas tout à fait d'accord. Un site, malgré nombre de recommandations demandant de ne pas mettre de target="_blank" ... soit disant parce que l'utilisateur ne doit pas etre "obligé" et tout le tintouin sur les clicks inutiles..., se doit de faire sa propre pub ou du moins informer l'utilisateur sur les possibilités qui lui sont offertes s'il s'inscrit par exemple.
En gros (car en relisant ma phrase, je la trouve pas super claire ^^) un lien affiché mais donnant sur une page "interdit d'acces" permet de montrer les possibilités qu'à l'utilisateur s'il s'inscrit. Donc après c'est affaire de gouts, de besoins... Donc je conçois parfaitement ton avis, mais il ne faut pas exclure l'autre solution Smiley cligne
mbarekh : ca serait bien que tu donnes ton avis sur la question d'ailleurs !
@++
Je vois ce que tu veux dire et je conçois ta façon de voir les choses.
Alors à ce moment-là, ne pas oublier de préciser par un attribut title ou un texte quelconque proche du lien, que la fonction est inaccessible/désactivée.