Aller au contenu

demande d'aide


infotech

Sujets conseillés

j'ai un prob que voici:

qaund je remplie le formulaire les informations sont enregistré dans ma base de donnée, mais le message confirmant l'inscription n'apparait pas. pareille pour les chaps vides et les pass differents?

voilà le code si vous pouvez savoir où es le problème. Merci

<?php require_once('connexion.php'); ?>

<?php

if(isset($_POST['login'])){
if(($_POST['login'] == "") || ($_POST['pass'] == "")){
header("Location:inscription.php?erreur=empty");
}
else if($_POST['pass'] == $_POST['pass2']){

$login = $_POST['login'];
$pass = md5($_POST['pass']);
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$privilege = $_POST['privilege'];
$add_user = sprintf("INSERT INTO utilisateurs (login, pass, nom, prenom, privilege) VALUES ('$login', '$pass', '$nom', '$prenom', '$privilege')");
mysql_select_db($database_dbprotect, $dbprotect);
$result = mysql_query($add_user, $dbprotect) or die(mysql_error());
header("Location:inscription.php?add=ok");
}
else{
header("Location:inscription.php?erreur=pass");
}
}
?>
<html>
<head>
<title>Inscription des utilisateurs</title>
<link href="styles.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style1 {font-family: Arial, Helvetica, sans-serif}
-->
</style>
</head>
<body>
<form action="" method="post" name="add">
<div class="titre"></div>
<p align="center" class="style1">
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "pass")) { // Affiche l'erreur ?>
<span class="erreur">Veuillez entrer deux fois votre mot de passe SVP</span>
<?php } ?>
<?php if(isset($_GET['add']) && ($_GET['add'] == "ok")) { // Affiche l'erreur ?>
<span class="reussite">Vous avez été enregistré avec succès !</span>
<?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "empty")) { // Affiche l'erreur ?>
<span class="erreur">Veuillez renseigner au moins un login et un mot de passe SVP</span>
<?php } ?>
</p>
<p align="center"><strong><u><font face="Arial">Formulaire d'Inscription</font></u></strong></p>
<table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux">
<tr>
<td width="40">Login</td>
<td width="144"><input name="login" type="text" id="login"></td>
</tr>
<tr>
<td>Mot de passe </td>
<td><input name="pass" type="password" id="pass"></td>
</tr>
<tr>
<td>Répéter mot de passe </td>
<td><input name="pass2" type="password" id="pass2"></td>
</tr>
<tr>
<td>NOM</td>
<td><input name="nom" type="text" id="nom"></td>
</tr>
<tr>
<td>Prénom</td>
<td><input name="prenom" type="text" id="prenom"></td>
</tr>
<tr>
<td>Privilège</td>
<td><select name="privilege" id="privilege">
<option value="user">Utilisateur</option>

</select></td>
</tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="Submit" value="Inscription">
</div></td>
</tr>
</table>
</form>
<p align="center"><strong> </strong></p>
<form action="" method="post" name="suppr">
<p align="center"><strong></strong></p>
<div align="center">
<p> </p>
</div>
</form>
</body>
</html>

Lien vers le commentaire
Partager sur d’autres sites

Salut,

En fait si ton inscription est réussie, tu ne dois pas faire de

header("Location:inscription.php?add=ok");

, tu restes sur la page en cours et tu affiches simplement que l'inscription a réussi. Tel que ton code fonctionne maintenant, il tourne en rond :

1- Tu vérifies en début de page si tu as bien les valeurs des variables login et mot de passe,

2- Si tu ne les as pas tu renvoies une erreur

3- Si tu les as tu fais l'inscription dans la base de données et tu renvoies la même page pour afficher la réussite

4- Problème : la page est relancée sans les variables login et mot de passe -> on se retrouve en 2, donc erreur.

Donc si l'insertion dans la base a réussi, tu fais $reussite = true; puis tu testes l'existence de la variable $reussite au moment où tu affiches ton résultat.

Modifié par Kalt
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...