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 :

Changer de page PHP si les params de connexion sont bons


Sujet :

Langage PHP

  1. #1
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut Changer de page PHP si les params de connexion sont bons
    Je dois être HS mais je sèche totalement là-dessus.

    Mon problème est que je ne souhaite passer à la page identite_add.php que si la variable $verdict est à 1, et le problème, c'est que le résultat de cette variable ne correspond pas à un rafraîchissement de page, donc j'imagine que le header location est exclus...

    Si vous pouvez m'aider, merciiiiiiiiiiiiii...



    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     <?php
     include("fonctions.php");
    if (isset($_POST['SoumetUid'])&&(($_POST['password']!='')&&($_POST['password']!=NULL)&&($_POST['uid']!='')&&($_POST['uid']!=NULL))){
     $cas='traitement';
     }
     elseif (isset($_POST['SoumetUid'])&&(($_POST['password']=='')||($_POST['password']==NULL)||($_POST['uid']=='')||($_POST['uid']==NULL))){
     $cas='vide';
     }
     else{
     $cas='start';
     }
     switch($cas){
    	 case 'start':
     ?>
     <html>
    	<head><title>Demandes de congés - Page d'accueil</title>
    		<link rel="stylesheet" type="text/css" href="page_index.css">
    	</head>
    	<body>
    		<div id="header">
    			<h2>CONG&Eacute;</h2>
    			<p>(à destination des agents)</p>
    		</div>
    		<div id="contenu">
    			<h3 class="item">POUR FAIRE UNE DEMANDE DE CONG&Eacute;</h3>
     
    				<form method="POST" action="index.php">
    					Entrez ici votre identifiant : <input type="text" name="uid"/>
    					Entrez ici votre mot de passe : <input type="password" name="password"/>
    					<input type="submit" name="SoumetUid" value="OK"/>
    				</form>
    		</div>
    	</body>
    </html>
    <?php
    break;
    case'vide':
     
    ?>
     <html>
    	<head><title>Demandes de congés - Page d'accueil</title>
    		<link rel="stylesheet" type="text/css" href="page_index.css">
    	</head>
    	<body>
    		<div id="header">
    			<h2>CONG&Eacute;</h2>
    			<p>(à destination des agents)</p>
    		</div>
    		<div id="contenu">
    			<h3 class="item">POUR FAIRE UNE DEMANDE DE CONG&Eacute; </h3>
    				<form method="POST" action="index.php">
    					Entrez ici votre identifiant : <input type="text" name="uid"/>
    					Entrez ici votre mot de passe : <input type="password" name="password"/>
    					<input type="submit" name="SoumetUid" value="OK"/> <font color="red">     Il faut remplir tous les champs !</font>
    				</form>
    		</div>
    	</body>
    </html>
    <?php
    break;
    case'traitement':
    $uid=$_POST['uid'];
    $password=$_POST['password'];
    $verdict=verif_connect($uid,$password);
    if ($verdict==1){
    	header("location:identite_add.php");
    }
    else{
    echo'Nous n\'avons pas trouvé vos paramètres de connexion dans notre base !';
    }
    }
    ?>

  2. #2
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Dendrite Voir le message
    Je dois être HS mais je sèche totalement là-dessus..............................
    Mais je ne vois pas pourquoi tu ne mets pas ce control avant d'écrire a l'écran, je veux dire ouvrir ton header

    Alors ça marcherait ça
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     <?php
     include("fonctions.php");
    if (isset($_POST['SoumetUid'])&&(($_POST['password']!='')&&($_POST['password']!=NULL)&&($_POST['uid']!='')&&($_POST['uid']!=NULL))){
     $cas='traitement';
     }
     elseif (isset($_POST['SoumetUid'])&&(($_POST['password']=='')||($_POST['password']==NULL)||($_POST['uid']=='')||($_POST['uid']==NULL))){
     $cas='vide';
     }
     else{
     $cas='start';
     }
     switch($cas){
     
                  case'traitement':
                      $uid=$_POST['uid'];
                      $password=$_POST['password'];
                      $verdict=verif_connect($uid,$password);
                      if ($verdict==1){header("location:identite_add.php");}
                       else{echo'Nous n\'avons pas trouvé vos paramètres de connexion dans notre base !';}
    break;
    	 case 'start':
     ?>
     <html>
    	<head><title>Demandes de congés - Page d'accueil</title>
    		<link rel="stylesheet" type="text/css" href="page_index.css">
    	</head>
    	<body>
    		<div id="header">
    			<h2>CONG&Eacute;</h2>
    			<p>(à destination des agents)</p>
    		</div>
    		<div id="contenu">
    			<h3 class="item">POUR FAIRE UNE DEMANDE DE CONG&Eacute;</h3>
     
    				<form method="POST" action="index.php">
    					Entrez ici votre identifiant : <input type="text" name="uid"/>
    					Entrez ici votre mot de passe : <input type="password" name="password"/>
    					<input type="submit" name="SoumetUid" value="OK"/>
    				</form>
    		</div>
    	</body>
    </html>
    <?php
    break;
    case'vide':
     
    ?>
     <html>
    	<head><title>Demandes de congés - Page d'accueil</title>
    		<link rel="stylesheet" type="text/css" href="page_index.css">
    	</head>
    	<body>
    		<div id="header">
    			<h2>CONG&Eacute;</h2>
    			<p>(à destination des agents)</p>
    		</div>
    		<div id="contenu">
    			<h3 class="item">POUR FAIRE UNE DEMANDE DE CONG&Eacute; </h3>
    				<form method="POST" action="index.php">
    					Entrez ici votre identifiant : <input type="text" name="uid"/>
    					Entrez ici votre mot de passe : <input type="password" name="password"/>
    					<input type="submit" name="SoumetUid" value="OK"/> <font color="red">     Il faut remplir tous les champs !</font>
    				</form>
    		</div>
    <?PHP
    }
     
    ?>
    	</body>
    </html>

  3. #3
    mon_nom_est_personne
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    header('Location: identite_add.php');

  4. #4
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par mon_nom_est_personne Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    header('Location: identite_add.php');
    Ah oui je l'avais pas vu celui là
    Merci pour lui

  5. #5
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Merci Fox et Personne, c'est sûrement ça, j'essaierai lundi au boulot... J'y ai laissé tout mon code.
    A 19H, j'y voyais plus clair ! Il était temps que je prenne une RTT...

    PS : c'est quoi votre remarque sur le header, il prend forcément des apostrophes ou bien Fox l'avait oublié ?

    edit : promis, le cas échéant je mets "résolu" lundi...

  6. #6
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Dendrite Voir le message
    Merci Fox et Personne, c'est sûrement ça, j'essaierai lundi au boulot... J'y ai laissé tout mon code.
    A 19H, j'y voyais plus clair ! Il était temps que je prenne une RTT...

    PS : c'est quoi votre remarque sur le header, il prend forcément des apostrophes ou bien Fox l'avait oublié ?

    edit : promis, le cas échéant je mets "résolu" lundi...
    Non, dans ton source les apostrophes étaient " d' un coté et ' de l' autre

  7. #7
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Bon, c'est pas très grave, mais non... Ce n'est pas ce que je vois.
    Sur le fond, réponse lundi mais je suis très confiante ! Le bon sens est de ton côté.

  8. #8
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Ca ne change rien, malheureusement...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: Cannot modify header information - headers already sent by (output started at blablabla
    Et comme c'est pour le travail, il faut VRAIMENT que je trouve rapidement une solution dans la figure imposée (à savoir redirection obligatoire à une autre page PHP si $verdict==1 et bien que (je le répète) $verdict soit le fruit d'un retour de fonction et non d'un rafraîchissement de page)...

    Y aurait-il moyen de lancer dans une fonction de rafraîchissement automatique de la page juste avant la valeur de retour de $valeur ? Une telle fonction existe-t-elle ? C'est peut-être un moyen de contourner l'obstacle ?

  9. #9
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Merci, Google, après quelques essais infructueux, voici la formule qui fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ($ldapbind){ 
    	echo'<META HTTP-EQUIV=Refresh CONTENT="1; URL=http://gnagnagna/identite_add.php">';
    		}

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

Discussions similaires

  1. [MySQL] Une image ne s'affiche pas sur ma page PHP mais les autres oui
    Par garance.tosello dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 02/10/2014, 19h50
  2. modifier les param de connexion de la BDD
    Par midialzer dans le forum Silverlight
    Réponses: 2
    Dernier message: 13/09/2012, 11h49
  3. [Smarty] changer une page php en smarty
    Par AMANI1987 dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 29/03/2011, 12h00
  4. Imprimer plusieurs pages PHP sans les ouvrir
    Par girardeau dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/05/2009, 15h43
  5. Réponses: 2
    Dernier message: 16/03/2006, 15h24

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