mon formulaire connexion bug

Répondre
po la
le 23/06/2005 à 19:06
po la
lol jai du mal mexpliquer je recommence

alor tu as donc 2 fichier F1 et F2

si de F1 tu passe ver F2 en post pour te loger a ton espace menbre tu aura un erreur mais sir la page F2 si tu met les code
<?php
if (isset($erreur)) echo '',$erreur;
?>
qui et en bas de la page F1 alor la lerreur s'afiche lautre solution et d'unclure les fichier F1 avec le formulaire si il y a un erreur (ou de le laisser en un seul fichier XD )

voila je pense avoir eter plus claire
(poste le code de tes 2 fichier @+
Laddy
le 23/06/2005 à 21:35
Laddy
tout est dans le lien du wall.

si tu sépares le php et le formulaire = pas d'erreur généré.

si php + formulaire sur une page = message d'erreur apparait.
po la
le 23/06/2005 à 21:47
po la
oki donc je m'explique :

tu as donc 3 parti :
parti formulaire
<form  method="POST" action="connexion.php">
<table width="487" border="0" cellspacing="0" cellpadding="0" class="table">
<tr>
<td width="126" class="legend">Votre identifiant : </td>
<td width="196" class="input"><input maxlength="64" name="login" type="text" value="<?php if (isset($_POST['login'])) echo stripslashes(htmlentities(trim($_POST['login']))); ?>">
</td>
<td width="165" class="info">&nbsp;</td>
</tr>
<tr>
<td class="legend">Mot de passe :</td>
<td class="input"><input class="text" maxlength="64" name="passwd" type="passwd" value="<?php if (isset($_POST['passwd'])) echo stripslashes(htmlentities(trim($_POST['passwd']))); ?>"></td>
<td class="info"> <em>Se souvenir de moi</em>
<input type="checkbox" name="cook" value="1"></td>
</tr>
<tr>
<td class="input">&nbsp;</td>
<td class="input"><a href="perdu.php">Mot de passe oubli&eacute;</a>
?</td>
<td class="info">&nbsp;</td>
</tr>
<tr>
<td class="input">&nbsp;</td>
<td class="input">&nbsp;</td>
<td class="info">&nbsp;</td>
</tr>
<tr>
<td class="legend">&nbsp;</td>
<td class="input"><input class="bouton" value="Connexion" name="connexion" type="submit"></td>
<td>&nbsp;</td>
</tr>
</table>
</form>

jusque la tout vas bien

second partie
le traintement du formulaire
<?php
include 'config.inc.php';
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['passwd']) && !empty($_POST['passwd']))) {



// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM adherent WHERE login="'.addslashes($_POST['login']).'" AND passwd="'.md5($_POST['passwd']).'"';
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
$data = mysql_fetch_array($req);

mysql_free_result($req);
mysql_close();

// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: mycompte/index.php');
exit();
}
// si on ne trouve aucune réponse, le visiteru s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Mot de passe erronné.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs adhérents ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>


3 partie
le traitement des erreur
<?php
if (isset($erreur)) echo '<b></b>',$erreur;
?>


donc en gros le code qui permet d'afficher les erreur et juste au dessus c'est celui que tu doi metre la ou tu veux faire aparetre les erreur et pourkoi pas afficher par inclusion le formulaire en cas d'erreur

voila la je pense que sa devrai resoudre une grand parti de ton probleme
Laddy
le 24/06/2005 à 08:39
Laddy
la 3ème partie (tratiement des erreurs) est placé dans le formulaire (1ere partie) , et les erreurs n'apparaissent pas si j'entre un mot de passe erroné.
po la
le 24/06/2005 à 12:49
po la
oui c'est normale vu que les erreur son produite par la pari 2 du traitement donc il faut transmatre les erreur du traitement au formulaire

soit tu inclu le fomulaire a la fin du traitement
soi tu na pas d'erreur

@++
Laddy
le 28/06/2005 à 14:54
Laddy
ça restera finalement ainsi merci pour ton aide.

je me penche sur l'envoi d'un nouveau mot de passe et là je bute.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours