begin process at 2012 05 31 02:50:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Probleme de test sur un $_SERVER["LOGON_USER"]


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de test sur un $_SERVER["LOGON_USER"]

mardi 8 août 2006 à 11:38:02 | Probleme de test sur un $_SERVER["LOGON_USER"]

pakito_77

Bonjour tout le monde,

Voila mon probleme, je souhaite faire un test sur le login de la session windows de l'utilisateur. Pour faire simple je souhaite afficher un menu (jusque la pas de probleme) avec un choix de plus pour une personne bien précise de mon réseau, je test donc si la variable du login de session correspond à la personne en question. Voici en gros mon test actuel:

<?

  $NomSession = $_SERVER["LOGON_USER"];

   if ($NomSession == "  le login de la personne ")
      {
        $ListeNom = array("Accueil","MAJ Telephone","Liste Telephone);
        $ListeLien = array("acceuil.asp","./Telephone/upload.asp","./Telephone/Liste/Telephone.htm);
        $nbListe = 3;
      }
       else
     {
       $ListeNom = array("Accueil","Liste Telephone);
       $ListeLien = array ("acceuil.htm","./Telephone/Liste/Telephone.htm);      
       $nbListe = 2;
      }
?>

je recupère donc le login de l'utilisateur avec  $_SERVER["LOGON_USER"] et je test SI il est égale ( avec un double = ) au nom voulu. Je génère ensuite le menu avec les listeNom et ListeLien.

Mais malheureusement ca ne marche pas et ca m'affiche le deuxieme menu avec les deux options.
Il doit donc surrement y avoir un probleme au niveau de mon test. Je developpe normalement en asp, mais pour ce menu j'ai comme contrainte le PHP, et n'etant pas un expérimenté dans se langage, j'ai semble t'il quelque lacune .

Merci d'avance pour votre aide ...

 

mardi 8 août 2006 à 13:37:08 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

Evangun

Salut, essaie déjà avec ça :

$NomSession = $_SERVER["LOGON_USER"];    if ($NomSession == "  le login de la personne ")
      {
        $ListeNom = array("Accueil","MAJ Telephone","Liste Telephone");
        $ListeLien = array("acceuil.asp","./Telephone/upload.asp","./Telephone/Liste/Telephone.htm");
        $nbListe = 3;
      }
       else
     {
       $ListeNom = array("Accueil","Liste Telephone");
       $ListeLien = array ("acceuil.htm","./Telephone/Liste/Telephone.htm");      
       $nbListe = 2;
      }
mardi 8 août 2006 à 13:59:46 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

pakito_77

Eratum, bien vue Evangun mais ce n'est pas ca.
Désolé c'etait une erreur de copié/collé en voulant allégé l'exemple et ne prendre que 2 et 3 option de mon menu (les menus ayant beaucoup plus d'options), j'ai sans faire expres oublier de copier les " a la fin, mais sur mon code elles y sont bien.

J'ai donc toujours le meme probleme ...
mardi 8 août 2006 à 14:09:34 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

PaDa

Membre Club
- Essaie déjà de faire un "echo $_SERVER["LOGON_USER"];" pour voir déja s'il y a une chance que ton test aboutisse (i.e. si la variable est bien celle à laquelle tu t'attends).
- Ensuite, vérifie bien que la casse est la même pour les deux chaines, l'opérateur "==" ne validera pas la condition sinon.
- Enfin, il est possible que tu aies des espaces autour d'une de tes chaines, ou des caractères non imprimables : utilise "trim()" pour les éliminer (c'est improbable ici mais bon) :
if (trim($NomSession) == trim('LoginUserASP')) { ... }

PaDa
mardi 8 août 2006 à 14:11:37 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

PaDa

Membre Club
(à noter que dans mon exemple ca n'a pas de sens de mettre trim() autour d'une chaine fixe, mais peut être récupère tu ce login spécial depuis une variable autre ? héhé)

PaDa
mardi 8 août 2006 à 14:19:01 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

pakito_77

Merci pour tes reponses PaDa,
Alors pour ma variable $NomSession elle renvois bien la chaine voulu ( domaine\\utilisateur ), je l'avais deja tester avec un echo, j'ai d'ailleurs copier la valeur renvoyer par l'echo pour faire mon test histoire d'etre sur que j'ai bien la meme.
Pour les trim j'ai essayer mais sans succes.

Juste une question, ca ne viendrait pas du faite que les variables $_SERVER ne renvoi pas une chaine mais plutot un tableau? Vue que je suis une quiche en Php j'en ai aucune idée, mais bon.
mardi 8 août 2006 à 14:37:44 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

PaDa

Membre Club
Réponse acceptée !
Aaaaaaaaaaaaaaah *idée*

Le backslash \ sert en PHP à "échapper" le caractère suivant.
Exemple :
Tu veux faire une chaine contenant un double guillemet, tout en te servant des doubles guillemets pour l'entourer, tu feras :
$var = "blabla\"blabla"; //ce qui donne la chaine blabla"blabla

Par conséquent, le backslash est un caractère particulier dans les chaines PHP : si tu veux insérer un backslash au milieu d'une chaine, il faudra en mettre 2, le premier dit à PHP "le caractère suivant est à prendre à la lettre", ou "échapper".

Donc donc donc : quand tu fais $NomSession == "domaine\\utilisateur", PHP va essayer de comparer $NomSession à la chaine domaine\utilisateur, et non pas domaine\\utilisateur.
Tu dois donc mettre ceci :
if ($NomSession == 'domaine\\\\utilisateur') { blabla }
4 backslashes sont nécessaires pour "signifier" 2 backslashes en réalité..

PaDa
mardi 8 août 2006 à 14:45:54 | Re : Probleme de test sur un $_SERVER["LOGON_USER"]

pakito_77

PaDa t'es une perle!!!

Bien trouvé ^^, ca marche en effet niquel avec les 4 backslashes.

Merci beaucoup pour ton aide plus que précieuse, et merci aussi Evangun pour ta reponse.



Cette discussion est classée dans : server, probleme, test, logon, telephone


Répondre à ce message

Sujets en rapport avec ce message

PROBLEME AVEC SQL SERVER 2000 ET AVEC LES IMAGE [ par kenza_sana ] Bonjour je vous demande de m'aider car ma base de donnees contient des images et j'utilise SQL SERVER 2000 ...Le rpobleme c'est que quand j'ai mis dan Tableau probleme [ par g0belin ] Bon voila j'ai un tableau $test[0..200] qui contiens du text mais le probleme c'est que je ne sais pas comment le printer !!aider moiex: si dans $test Probleme de HTTP_REFERER [ par JoJo738 ] Bonjour, J'ai un gros probleme de HTTP_REFERER en localhost. Et j'utilise ceci : <span style="font-family: 'Courier New'; font-style: normal; font-var Probleme Sqlserver [ par hitman00 ] Coucou tout le monde j ai un petit probleme.Je voudrai me connecter a une base sql server qui se trouve sur un server distant et j'utilise Easyphp Lor Probleme MKDIR et safe mode [ par MATHIS49 ] bonjour jai un petit probleme, j'ai crée un repertoire "test" avec mkdir avec : [quote] umask(0000); mkdir("./test/",0777); [/quote] la tout se pass aide server php [ par keroberos ] salut je cherche comment regler le server pour ke je sahe lire les fichier sur mon site comme seci test?mode=ok au lieu de test.php?mode=ok car kan je probleme avec un test sur un checkbox, merci [ par rachidphp93 ] Bonjour,J'arrive pas a recuperer la valeur d'un checkbox, quand je le coche, en fait je veux qu'une cas a cocher provisoire qui prend 1 si ell Enfantain, mais je ne trouve pas le probleme ! [ par Mickylord ] Bonjour tous :)Bon, j'ai un peu honte de poser ce probleme ici, mais j'ai fais des recherches, trouvé des réponses, les ai appliqués et rien ne foncti probleme de quote lors du passage de easy php 1.6 à wamp server 2 [ par webel ] Bonjour, j'ai un petit problème que je n'arrive pas a résoudre: il s'agit d'une apli php qui tournai très bien sur mon ancienne configuration en ea Probleme d url rewriting [ par adess00 ] Bonjour,J'aimerais faire un rewrite qui transforme www.site.com/test/coucou en www.site.com/test.php?id=coucouJ'ai donc mis RewriteRule ^test/(.+)$ te


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales