IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

HTTP authentication - Formulaire rappelé


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut HTTP authentication - Formulaire rappelé
    Bonjour à tous, je fais une autentification en passant par mon navigateur, ca marchait bien avant, mais la après avoir migré de serveur ca ne fonctionne plus.
    Ca me rappelle le formulaire même si le login et mot de passe sont bons

    Voici le code appelé avant même la balise html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    <?php 
     
    $machine_bd="mysqlhost4"; 
    $compte_bd="666571_xxx";
    $bdd_bd="666571_xxx";    
    $motpasse_bd="xxx";
    $connect=mysql_connect($machine_bd,$compte_bd,$motpasse_bd);
    mysql_select_db($bdd_bd,$connect);
    unset($motpasse_bd);
     
     
    function authenticate() {
       header('WWW-Authenticate: Basic realm="Test Authentication System"');
       header('HTTP/1.0 401 Unauthorized');
       echo "Vous devez entrer un nom d'utilisateur valide et un mot de passe correct pour accéder à cette ressource\n";
       exit;
      }
     
     
    if ( !isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW']) ){
          authenticate();
    }
    elseif( ($_SERVER['PHP_AUTH_USER']=='login') && ($_SERVER['PHP_AUTH_PW']=='mdp') ){}
    else{
      authenticate();
    }       
     
     
    ?>
    Merci d'avance de votre aide

  2. #2
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 509
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 509
    Par défaut
    Si j'ai bien le code que tu montres, cela me semble normal que ça puisse te montrer à nouveau le formulaire. A moins que tu ais volontairement caché un bout de code mais tu souhaitais faire une redirection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     [...] elseif( ($_SERVER['PHP_AUTH_USER']=='login') && ($_SERVER['PHP_AUTH_PW']=='mdp') ){} [...]
    Dans le {} tu voulais y mettre quoi ?
    Par contre, si tu as changé de serveur regarde quel serveur il s'agit. "Il me semble", qu'entre IIS et Apache c'est pas pareille.

  3. #3
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut
    En fait j'ai mis {} volontairement car c'est appelé au début de ma page donc en gros après ya le code de ma page donc en mettant {} il ne fait normalement rien et affiche le code de la page qui est en dessous

    Edit : c'est bien un serveur apache migré vers un hébergement chez amen, donc apache aussi

  4. #4
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 6
    Par défaut
    Bonjour, alors déjà désolé du déterrage mais ça peut toujours servir.

    Alors plutôt que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if ( !isset($_SERVER['PHP_AUTH_USER']) || isset($_SERVER['PHP_AUTH_PW']) )
    {
          authenticate();
    }
    il faudrait tenter

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if ( ($_SERVER['PHP_AUTH_USER']=="") || ($_SERVER['PHP_AUTH_PW']="") )
    {
          authenticate();
    }

  5. #5
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut
    Bonjour, peut etre oui, en fait depuis j'ai résolu le problème en passant par un .htaccess, solution tout aussi simple...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. (Wildlfy 8.1.0.Final) Basic HTTP Authentication
    Par geforce dans le forum Wildfly/JBoss
    Réponses: 5
    Dernier message: 25/09/2014, 08h24
  2. Réponses: 3
    Dernier message: 01/08/2007, 19h32
  3. probleme avec formulaire rappelant la page
    Par zorba49 dans le forum Langage
    Réponses: 5
    Dernier message: 30/01/2007, 12h10
  4. Formulaire "Rappel automatique"
    Par PhRey dans le forum IHM
    Réponses: 4
    Dernier message: 04/01/2007, 12h03
  5. [HTTP] Requete type formulaire
    Par Dahu dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 25/05/2005, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo