$_SERVER['PHP_AUTH_USER']

gruel -  
 gruel -
Bonjour,
J'ai une page d'acceuil ou les personnes peuvent s'identifier en tant qu'invité, privilégié ou administrateur et j'ai un répertoire "new" protégé par mot de passe. Je veux que les utilisateurs une fois connectés sur la page d'acceuil aient accès au répertoire "new" sans que la fenêtre d'authentification leur soit demandée. Puis-je mettre les valeurs "nom" et "motPasse" dans une variable, j'ai essayé ceci: RepNom et RepPass contiennent les noms et mot de passe du répertoire "new" mais ça ne fonctionne pas, le serveur me demande tjrs la fenêtre d'authentification. Est-ce que quelqu'un peut m'aider

$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom'];
$_SERVER['PHP_AUTH_PW']=$_SESSION['RepPass'];

9 réponses

ThEBiShOp Messages postés 9307 Statut Contributeur 1 566
 
ton serveur est bien en php5 ?
0
gruel
 
C'est la version 4.4.8
0
ThEBiShOp Messages postés 9307 Statut Contributeur 1 566
 
mmh il me semble que cette fonctionnalité n'est disponible qu'à partir de php5
0
gruel
 
Bonjour,
J'ai présentement la version php5.2.5 mais ça ne fonctionne tjrs pas. Que dois-je faire pour que ça fonctionne?
Merci de votre aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
HostOfSeraphim Messages postés 7340 Statut Contributeur 1 608
 
Poste le code complet ici, tu dois avoir une erreur quelque part.

0
gruel
 
if (isset($_SESSION['nomUtilisateur'])) {
$libelleNiveau = '';
switch ($_SESSION['niveau'])
{
case 'I' :
$libelleNiveau = 'd\'invité';
break;
case 'P' :
$libelleNiveau = 'privilégiés';
$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom'];
$_SERVER['PHP_AUTH_PW']=$_SESSION['RepPass'];
break;
case 'G' :
$libelleNiveau = 'de gestionnaire';
$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom'];
$_SERVER['PHP_AUTH_PW']=$_SESSION['RepPass'];
break;
0
HostOfSeraphim Messages postés 7340 Statut Contributeur 1 608
 
Le plus simple serait de mettre le nom d'utilisateur en variable session à la connexion sur le site (ça semble déjà être le cas), ainsi que le niveau.

Ensuite, dans ton répertoire protégé, tu vérifies si ces variables sont bien définies ; si oui, tu affiches en fonction du niveau, si non, tu renvoies vers le formulaire d'identification.

0
gruel
 
Bonjour, si je veux mettre $_SESSION['RepNom'] et $_SESSION['RepPass'] dans l'url, quelle serait la syntaxe?
echo 'Pour aller a votre fiche ';
echo '<a href="'.Get_Adr_Base_Ref().'Fiche_Fam_Pers.php?Refer= '.$_SESSION['referuser'].'"><font size=""><b>cliquez ici</b></font></a>'."\n";
0
gruel
 
Bonjour, j'ai essayé ceci dans le fichier " fich_fam_pers.php " qui se trouve dans le répertoire protégé.

if (($_SESSION['estPrivilegie']) and ($_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom']) and ($_SERVER['PHP_AUTH_PW']=$_SESSION['RepPass']));

J'ai aussi essayé ceci dans le même fichier.
J'ai aussi changé $_SESSION['RepNom'] par le user et le pwd, mais ça ne fonctionne tjrs pas.
Le serveur me demande tjrs la fenetre d'authentification que j'aimerais éviter.

$_SESSION_start(); // Démarrage de la session
$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom'];
$_SERVER['PHP_AUTH_PW']=$_SESSION['RepPass'];

Merci, gruel
0
damien
 
$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom']
C'est une assignation
Pour faire une comparaison il faut écrire :
$_SERVER['PHP_AUTH_USER'] == $_SESSION['RepNom']
0
gruel
 
Merci, mon problème est résolu
0