Pb de securisation de pgae php

Tonio17
Invité n'ayant pas de compte PHPfrance

09 oct. 2006, 17:17

Bonjour,

Je vous souleve ici mon probleme. J'aimerai que lorsqu'un visiteur accede a certaines pages, on lui demande son login et pass pour continuer.

Le probleme, c'est que la boite de dialogue ne valide pas son choix et redemande sans cesse les identifiants, alors qu'a mon avis, ils sont bons.

Voici les 2 fichiers utilisés.

1) common.php
$openadmin = "admin";
$openpassword = "root";
2) admin.php (page a securiser)

<?php
include ("common.php");

// login authorization code

if(!isset($PHP_AUTH_USER)) {
 Header("WWW-Authenticate: Basic realm=\"Objectif Immo\"");
 Header("HTTP/1.0 401 Unauthorized");
 echo "You must enter a username and password\n";
 exit;
 } else {
 if ($PHP_AUTH_USER != $openadmin) {Header( "HTTP/1.0  401  Unauthorized");die("Enter the correct username");}
 if ($PHP_AUTH_PW != $openpassword) {Header( "HTTP/1.0  401  Unauthorized");die("Enter the correct password");}
 }
  
  //setup the database
  $link = mysql_connect ("db614.1and1.fr", $user, $password);
		if (! $link)
			{
			die ("Couldn't connect to mySQL server");
			}
		if (!mysql_select_db ($db, $link) )
			{
			die ("Coldn't open $db: ".mysql_error() );
			}
?>
Merci pour votre aide

Eléphant du PHP | 413 Messages

10 oct. 2006, 14:03

salut,

est-ce que tu utilises l'authentification par le .htaccess ?
je pense que oui.
donc ce qu'il faudrait que tu fasses, c'est déterminer si le problème vient de ton programme PHP ou de ta config .htaccess.

première chose à voir : est-ce que ta page admin.php est exécutée ?
--
Goeb

Invité
Invité n'ayant pas de compte PHPfrance

12 oct. 2006, 09:33

Salut,

Alors je n'ai pas de .htaccess dans le repertoire qui contient admin.php

et oui, la page s'execute tres bien qd je commente le code de securisation.

Tjrs le meme pb, je ne vois pas. Il ne reconnait pas les Identifiants que je rentre..... :?

ViPHP
ViPHP | 1961 Messages

12 oct. 2006, 10:12

Bonjour,

Es-tu sur du nom de tes variables super globales ???

Essaye en remplaçant $PHP_AUTH_USER par $_SERVER['PHP_AUTH_USER']
et $PHP_AUTH_PW par $_SERVER['PHP_AUTH_PW']

Et de l'ordre des paramètres du header ???

essaye comme ceci
Header('Unauthorized', true, 401);
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein