$_SERVER['PHP_AUTH_USER']

Fermé
gruel - 6 janv. 2009 à 02:04
 gruel - 9 févr. 2011 à 21:11
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 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
6 janv. 2009 à 10:45
ton serveur est bien en php5 ?
0
C'est la version 4.4.8
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
6 janv. 2009 à 15:22
mmh il me semble que cette fonctionnalité n'est disponible qu'à partir de php5
0
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 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 608
7 janv. 2009 à 00:49
Poste le code complet ici, tu dois avoir une erreur quelque part.

0
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 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 608
7 janv. 2009 à 09:51
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
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
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
$_SERVER['PHP_AUTH_USER']=$_SESSION['RepNom']
C'est une assignation
Pour faire une comparaison il faut écrire :
$_SERVER['PHP_AUTH_USER'] == $_SESSION['RepNom']
0
Merci, mon problème est résolu
0