Bonjour.

Mon but est de faire une gestion d'utilisateur pour un site (inscription/connexion/suppression de profil etc...).
Pour ce faire j'ai créer une database, et puis une table users (lastname CHAR(20), firstname CHAR(20), nickname CHAR(20), birth DATE, mail CHAR(30))

J'ai ensuite fais un fichier php pour pouvoir s'inscrire dans la table avec un formulaire en post, j'ai fais cela
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
<body>
   <?php
   echo "<form class=\"sign\" action=\"".$next."\" method=\"post\">";?>
     Nom : <input type="text" name="nom"/>
     Prenom :<input type="text" name="prenom"/>
     Pseudo :<input type="text" name="pseudo"/>
     Date de naissance <input type="text" name="date" value="AAAA-MM-JJ"/>
     E-mail: <input type="text" name="mail"/>
     <input type="submit" value="Valider Inscription"/>
     </form>
     
     <?php
     //connection au serveur
     $conn = mysql_connect("localhost", "root", "azqswx");

     if(!$conn){
       echo "Echec de connexion";
     }
     //selection de la base de donnees
     $db  = mysql_select_db("users");


     //recuperation des valeurs des champs

     $nom=$_POST['nom'];
     $prenom=$_POST['prenom'];
     $pseudo=$_POST['pseudo'];
     $date=$_POST['date'];
     $mail=$_POST['mail'];

//test : voir si c'est vide
if($nom=='null' || $prenom=null || $pseudo==null || $date==null || $mail==null){
           $next='redirerror.php?cause=vide'; exit;}

else{
          //requete pour inserer donnees dans table
           $sql2="SELECT * FROM users";
           $req2=mysql_query($sql2,$conn);

          while($ligne=mysql_fetch_array($req2)){
                 if($ligne['nickname']==$pseudo){
                 $next='redirerror.php?cause=pseudo';
                  }
                  else{
                  $sql="INSERT INTO users (lastname, firstname, nickname, birth, mail)
                            VALUE ('$nom','$prenom', '$pseudo', '$date', '$mail')";
                  $req=mysql_query($sql, $conn); 
                 $next='valide.php';
                   }
              }
}

?>
</body>
Le but de ce code étant :

-de proposer un formulaire afin de remplir une ligne dans le tableau users (de s'inscrire en fait)
- de tester si les données entrées ne sont pas vide:
- si elles sont vides, j'affecte $next (variable qui représente la page qui va s'afficher quand on va cliquer sur le submit) à une page de redirection avec un message d'erreur
-sinon, je veux tester si le pseudo rentré n'est pas déjà utiliser (boucle while + if rouge), si le pseudo est déjà utiliser je redirige vers la page d'erreur ($next='redirerror.php'). Sinon je crééer une ligne dans le tableau, ce qui validera l'inscription (du coup $next='valide.php').


Tout avait l'air bien pourtant... mais ça marche pas:
- ça ne me redirige pas vers les pages voulut
- ça créer quand même un user du meme pseudo

Une solution ?

Merci d'avance à ceux qui auront le courage de lire ça ><