Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3011 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Probleme de formulaire ou de PHP... j'arrive pas a trouver l'erreur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de formulaire ou de PHP... j'arrive pas a trouver l'erreur

n°127814
sanosuke
JEHUTY
Posté le 18-04-2002 à 13:26:14  profilanswer
 

Salut !!!
 
J'ai créé une section membre pour mon site et depuis que j'utilise les sessions (avant j'utilisais les cookies) je n'arrive plus à recuperer des valeurs a cause d'un probleme de formulaire .... je rempli le champs "pseudo" et le champs "pass" comme il faut mais ca me repond :
 
Vous avez oublié de remplir le champs pseudo.
 
je comprends pas pourkoi ... avant d'utiliser les cookies ca marchais bien.
Bon je met le code ..
__________________________________________________
_____________
login.inc.htm
 
<html>
 
<head>
<title>Log-in</title>
<meta name="generator" content="Namo WebEditor v4.0">
</head>
 
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
 
<form method="post" action="connexion.php">
<p align="center">
<b><font color="#CCCC99">Pseudo:</font></b>
<input type="text" name="pseudo" maxlength="250" size="12"><br>
<b><font color="#CCCC99">Pass:   </font></b>
<input type="password" name="pass" maxlength="10" size="12"><br>
<input type="submit" value="log in"></p>
</form>
</body>
 
</html>
__________________________________________________
_____________
connexion.php
 
 
<? session_start(); ?>
<html>
 
<head>
<title>Site de la seconde 4</title>
<meta name="generator" content="Namo WebEditor v4.0">
<link rel="SHORTCUT ICON" href="http://www.multimania.com/chaieb/favoricon.ico">
</head>
 
<body bgcolor="#316B8C" text="#BCC4DC" link="#BCC4DC" vlink="#BCC4DC" alink="red">
<table cellpadding="0" cellspacing="0" height="70">
    <tr>
        <td width="175" background="images/barrhogoche.gif">
            <p align="center"> </p>
        </td>
        <td width="167" background="images/barrhomilieu.gif">
            <p> </p>
        </td>
        <td width="618" background="images/barrhocolor.gif">
            <p> </p>
        </td>
        <td width="17" background="images/barrhodroite.gif">
            <p> </p>
        </td>
    </tr>
</table>
<div align="left">
<table cellpadding="0" cellspacing="0" width="975">
    <tr>
        <td width="154" align="left" valign="top">
            <table cellpadding="0" cellspacing="0" width="175">
                <tr>
                    <td width="165" height="29" background="images/navgh.gif">
                        <p> </p>
                    </td>
                </tr>
                <tr>
                    <td width="165" background="images/navg.gif">                        <p align="center"> </p>
                    </td>
                </tr>
            </table>
            <table cellpadding="0" cellspacing="0" width="175">
                <tr>
                    <td width="155" background="images/navg.gif">                        <p align="center"><?include('menu.inc.htm';)?></p>
                    </td>
                </tr>
            </table>
            <table cellpadding="0" cellspacing="0" width="175">
                <tr>
                    <td width="145" height="28" background="images/navbas.gif">
                        <p> </p>
                    </td>
                </tr>
            </table>
        </td>
        <td width="821" height="797" align="left" valign="top">
<p align="center">
 
 
 
</p>
<p align="center">
<?
{
 $link = mysql_connect(getenv("MYSQL_HOST" ),"*****", "********" );
    mysql_select_db (getenv("MYSQL_DATABASE" ));  
 
if($pseudo=='';)
    {
    echo '<p>Vous avez oublié de remplir le champs pseudo.</p>';
    include('login.inc.htm';);
    exit;
    }
 
if($pass=='';)
    {
    echo '<p>Vs avez oublié d\'ecrire un mot de pass!</p>';
 include('login.inc.htm';);
 exit;
 }
 
// on recupère le password de la table qui correspond au login du visiteur
$sql = "select * from users where pseudo='$pseudo'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
 
$data = mysql_fetch_array($req);
 
if($data['pass'] != $pass)
    {
    echo '<p>Mauvais login / password. Merci de recommencer</p>';
    include('login.inc.htm';); // On inclus le formulaire d'identification
    exit;
    }
else
    {
    session_register('pseudo';);
    session_register('prenom';);
 session_register('nom';);
 session_register('mail';);
 session_register('niveau';);
    echo "Connecté en tant que";
 echo "<br>$pseudo";
    }
   
  mysql_close();  // on ferme la connexion  
}?></p>
        </td>
    </tr>
</table>
</div>
</body>
 
</html>
 
 
 
 
vala ... si qqn pouvais m'aider ce srai chic :)

mood
Publicité
Posté le 18-04-2002 à 13:26:14  profilanswer
 

n°127829
Trracer
Posté le 18-04-2002 à 13:53:05  profilanswer
 

Essaye avec des isset plutot que de comparer directement le contenu de la chaine pseudo et pass ou alors compare plutot la longueur des chaines... à mon avis ça te posera moins de probleme.

n°127842
sanosuke
JEHUTY
Posté le 18-04-2002 à 14:05:08  profilanswer
 

je viens de le faire et ca pose un autre probleme ... maintenant ca me marque :
 
"Mauvais login / password. Merci de recommencer"
aaaaaarg je sais pas quoi faire !!! HELP !!

n°127845
Trracer
Posté le 18-04-2002 à 14:08:59  profilanswer
 

Oui mais au moins tu es allez plus loin dans le script, cela veut donc dire que c'etait bien cela qui posais probleme dans un premier temps ;)

n°127848
Trracer
Posté le 18-04-2002 à 14:10:38  profilanswer
 

bha meme reflexion pour ton nouveau probleme, fait une vrai comparaison de chaine, et pas !=...

n°127852
sanosuke
JEHUTY
Posté le 18-04-2002 à 14:13:51  profilanswer
 

Trracer a écrit a écrit :

Oui mais au moins tu es allez plus loin dans le script, cela veut donc dire que c'etait bien cela qui posais probleme dans un premier temps ;)  




 
ouais :)  j'ai fait different trucs et quand j'ai viré la premiere ligne de connexion.php (je savais que ca allais creer une erreur mais je voulais voir les autres effets ) le scripts s'est executé jusqu'au bout ... mais sans garder les variables de sessions bien sur !

n°127855
sanosuke
JEHUTY
Posté le 18-04-2002 à 14:17:42  profilanswer
 

J'ai enlevé tout le html de connexion.php et ca avais l'air de marcher .... dc comment je fait ???  :cry:

n°127878
Trracer
Posté le 18-04-2002 à 14:35:30  profilanswer
 

Hum, si tu demarais ta session au moment ou le code php commence ce serait peut etre mieux. Ensuite commence les tag code en precisant le langage (ok, pas obligatoire, mais j'ai deja vu des serveur ou ça marchait mieux avec ça... donc <?php...?> ) Et c'est pas obligatoire d'encadrer le bloc code general par des {...}

n°127880
Tentacle
Posté le 18-04-2002 à 14:36:33  profilanswer
 

sanosuke a écrit a écrit :

J'ai enlevé tout le html de connexion.php et ca avais l'air de marcher .... dc comment je fait ???  :cry:  




 
Ton erreur est que tu as enregistre la variable $pseudo dans ta session, et donc la valeur de $pseudo venant du formulaire est écrasée par celle de la session. Ceci pour des raisons pratiques et surtout de sécurité.
 
Tu vas me dire, tu l'enregistres dans la session qu'à la fin. Mais le problème c'est que tu as déjà fait des tests avant je suppose, donc au moment du login, tu utilises déjà une ancienne session.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Probleme de formulaire ou de PHP... j'arrive pas a trouver l'erreur

 

Sujets relatifs
[delphi]ca vous dit quelque chose ce message d'erreur?[PHP] Ca ecris deux fois dans la base ...
Créer des fichiers avec PHP[javascript] gérer plusieurs boutons radio dans un formulaire
[VB] Probléme de variable[PHP] Ca veut pas entrer dans ma base :(
[PHP] C'est possible ça ?SQL, problème lors du count
Probleme de pointeur et de classASP erreur bizarre
Plus de sujets relatifs à : Probleme de formulaire ou de PHP... j'arrive pas a trouver l'erreur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR