Bonjour, alors voila j'ai crée un formulaire et je voudrais que les données de ce formulaire rentrent dans ma BDD mais malheureusement cela ne marche pas.
Mon code fonctionne, l’écho
' Vous &ecirctes maintenant inscrit et membre du site';
s'affichent mais les données ne rentrent pas dans la base. Je pense pas que l'erreur vienne de mon code puisqu'au début, j'avais juste les champs ID login et pass et tout fonctionnait. Mais j'ai ajouté le nom, prenom , adresse , CP, ville dans ma table et j'ai adapté du coup le code et maintenant cela ne fonctionne plus..

Est ce que quelqu’un connait ce problème .. ?

Voici le code
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
 
<?php
 
// Connexion à la base de données 
    try
    {
        // On se connecte à MySQL 
        $bdd = new PDO('mysql:host=localhost;dbname=sfere_essaie', 'root', ''); 
    } 
    catch(Exception $e) 
    { 
        // En cas d'erreur, on affiche un message système et on arrête tout 
             die('Erreur : '.$e->getMessage());
	}
 
$error = FALSE;
$registerOK = FALSE;
 
 
	 if(isset ($_POST["register"]))
	{
 
 
        // On regarde si tout les champs sont remplis, sinon, on affiche un message à l'utilisateur.
        if($_POST["login"] == NULL OR $_POST["pass"] == NULL OR $_POST["pass2"] == NULL OR $_POST["nom"] == NULL OR $_POST["prenom"] == NULL OR $_POST["adresse"] == NULL OR $_POST["CP"] == NULL OR $_POST["ville"] == NULL )  
		{
 
            // On met la variable $error à TRUE pour que par la suite le navigateur sache qu'il y'a une erreur à afficher.
            $error = TRUE;
 
            // On écrit le message à afficher :
            echo $errorMSG = "Tout les champs doivent &ecirctre remplis !";
 
        }
		// Sinon, si les deux mots de passes correspondent :
        elseif($_POST["pass"] == $_POST["pass2"])
		{
 
            // On regarde si le mot de passe et l'identifiant n'est pas le même
            if($_POST["login"] != $_POST["pass"])
			{
 
                // Si c'est bon on regarde dans la base de donnée si l'identifiant est déjà utilisé :
               $sql = 'SELECT COUNT(*) AS nb_rec FROM gerant WHERE login = ?';
			   $stmt = $bdd->prepare($sql);
			   $exec = $stmt->execute(array($_POST['login']));
				// Si $sql est égal à 0 (c'est-à-dire qu'il n'y a pas d'dentifiant avec la valeur tapé par l'utilisateur
               if($exec)
			   {
					$data = $stmt->fetch();
					if ($data['nb_rec'] == 0)
					{
 
 
 
						if($_POST["login"] != $_POST["pass"])
						{
 
                           // Si tout ce passe correctement, on peut maintenant l'inscrire dans la base de données :
                        $req = $bdd->prepare('INSERT INTO gerant (login, pass, nom, prenom, adresse, CP, ville) VALUES (?, ?, ?, ?, ?, ?, ?,)'); 
 
						echo $_POST['login']; 
						echo $_POST['pass'];
						echo $_POST['nom']; 
						echo $_POST['prenom']; 
						echo $_POST['adresse']; 
						echo $_POST['CP']; 
						echo $_POST['ville'];
 
						$req->execute(array($_POST['login'], $_POST['pass'], $_POST['nom'], $_POST['prenom'], $_POST['adresse'], $_POST['CP'], $_POST['ville']));
 
						echo ' Vous &ecirctes maintenant inscrit et membre du site';
						}
 
						else
						{
						$error = TRUE;
                        echo $errorMSG = "Erreur dans la requ&ecircte SQL<br/>".$req."<br/>";
						}
					}
					else
					{
						echo "l\identifiant est déja utilisé";
					}
				}
				else
				{
					$error = TRUE;
					echo $errorMSG = "L'identifiant <strong>".$_POST["login"]."</strong> est d&eacutejà utilis&eacute !";
					$login = NULL;
					$pass = $_POST["pass"];
				}
			}
			else
			{ 
 
                $error = TRUE;
				echo $errorMSG = "L'identifiant et le mot de passe doivent êtres différents !";
 
            }
		}		// Sinon si les deux mots de passes sont différents :      
		elseif($_POST["pass"] != $_POST["pass2"])
		{
				 $error = TRUE;
			echo $errorMSG = "Les deux mots de passes sont différents !";
				 $login = $_POST["login"];
				 $pass = NULL;
 
		}
 
			// Sinon si l'identifiant et le mot de passe ont la même valeur :
		elseif($_POST["login"] == $_POST["pass"])
		{
 
				 $error = TRUE;
			echo $errorMSG = "L'identifiant et le mot de passe doivent être différents !";
 
		}
	}
 
?>
Merci d'avance pour votre aide