Page 1 sur 1

apparaitre un li d'un men

Posté : 25 août 2015, 22:40
par essai
salut
j ' ai fait dispparaitre le li d'un menu avec css
.sousmenu11{
visibility: hidden;
}
pour le faire apparaître j'ai écrit mais pas marcher
""<li class="sousmenu11" >""
<?php
session_start() ;
if(isset($_SESSION['nom'])){
echo ' <h1 > '.$_SESSION['nom'].' : bien venue </h1>' ; 

if($_SESSION['nom']="imane"){
?>
<script type="text/javascript"> 
document.getElementById('sousmenu11').style.display='block';

</script> 
<?php
}


} else {
 header('location:/testeBaseDonnee/seConnecter.php');
exit;
}
?>
merci

Re: apparaitre un li d'un men

Posté : 26 août 2015, 09:30
par ynx
Salut,

visibility et display sont deux propriétés différentes.

Si tu veux utiliser display, il faut l'initialiser à la valeur none dans ton css :
.sousmenu11{
    display: none;
}
Si tu veux utiliser visibility, il faut modifier cette propriété dans ton javascript :
document.getElementById('sousmenu11').style.visibility='visible';
Note : si tu veux utiliser getElementById() pour récupérer l'élément, celui-ci doit avoir l'attribut id correspondant.

Bonne journée

Re: apparaitre un li d'un men

Posté : 26 août 2015, 18:21
par essai
merci Mynx je pense que le Pb c'est le mélange Php et java c'est pourquoi pb n'est pas résolu

Re: apparaitre un li d'un men

Posté : 27 août 2015, 10:07
par Ryle
Bonjour,

Il y a effectivement quelques problèmes dans ton code :
$_SESSION['nom']="imane" ici tu affectes la valeur "imane" à la variable $_SESSION['nom']. Si tu veux les comparer l'opérateur est == et non =

Il faut effectivement distinguer les deux propriétés css :
- Visibility : hidden / visible, permet de rendre visible ou non un élément. Avec la valeur "hidden", l'espace occupé par celui-ci reste le même, l'élément est simplement devenu "transparent". S'il mesure 300px de haut, une fois masqué, tu auras un espace vide de 300px.
- Display : none / block / inline / ... permet de d'activer ou de désactiver un élément. Avec la valeur "none", l'espace occupé est libéré, l'élément ne fait plus partie des éléments affichés à l'écran. S'il mesure 300px de haut, une fois désactivé, tu n'auras pas d'espace à la place.

Ps : Java est un langage côté serveur (comme php), ici tu utilises du Javascript, ce n'est pas la même chose ;)

Re: apparaitre un li d'un men

Posté : 27 août 2015, 11:29
par essai
bonjour Ryle == oui c'est pour comparer même avec se changement le pb reste je vais cherché encore et merci

Re: apparaitre un li d'un men

Posté : 27 août 2015, 19:56
par martineP
je crois qu'il faudrait que tu dises où et dans quel div(<div id="sousmenu11"></div> tu veux faire apparaitre ton menu.

Re: apparaitre un li d'un men

Posté : 28 août 2015, 10:42
par essai
salut ca n' a pas marché merci

Re: apparaitre un li d'un men

Posté : 28 août 2015, 16:20
par martineP
Si je comprends bien, tu veux que si le nom soit imane, le menu n'apparaisse pas et si c'est tout autre nom, il apparaisse ?
Si oui, pourquoi ne pas faire plus simplement : Si nom existe et nom==imane echo 'pas de menu'; Else echo ' script menu';

Re: apparaitre un li d'un men

Posté : 30 août 2015, 12:46
par essai
salut c'est le contraire le menu apparaisse si le nom est imane
merci

Re: apparaitre un li d'un men

Posté : 30 août 2015, 18:19
par martineP
Et ca tout simplement ?
<?php
session_start() ;
if (isset($_SESSION['nom']) && $_SESSION['nom']=="ok" )
{
      if (isset($_SESSION['nom']) && $_SESSION['nom']=="imane" )
      {
               echo 'ton menu simplement avec ses li, ses class....';
      }
      else 
      {
              echo ' <h1 > ' . $_SESSION['nom'] . ' : bienvenue </h1>' ; 
      }
}
else
{
       header('location:/testeBaseDonnee/seConnecter.php');
       exit;
}
?>