Bonsoir à tous et comme d'hab merci à ceux qui prendront le temps de me lire et de me repondre.
Voila mon probleme ce morceaux de code ci-dessous est censé verifier si un utilisateur est deja enregistrer avec un meme 'username' mais à chaque fois que je teste il laisse passez l'inscription d'un nouveau membre avec un 'username' deja existant.
Voici le code :
Merci à tous. Bonne soirée.
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 <?php session_start(); // on teste si le visiteur a soumis le formulaire if (isset($_POST['register']) && $_POST['register'] == 'register') { // on teste l'existence de nos variables. On teste également si elles ne sont pas vides if ((isset($_POST['mail_address']) && !empty($_POST['mail_address'])) && (isset($_POST['username']) && !empty($_POST['username'])) && (isset($_POST['password']) && !empty($_POST['password'])) && (isset($_POST['confirm_password']) && !empty($_POST['confirm_password']))) { //On enleve lechappement si get_magic_quotes_gpc est active if(get_magic_quotes_gpc()) { $_POST['username'] = stripslashes($_POST['username']); $_POST['password'] = stripslashes($_POST['password']); $_POST['confirm_password'] = stripslashes($_POST['confirm_password']); $_POST['mail_address'] = stripslashes($_POST['mail_address']); } // on teste les deux mots de passe if ($_POST['password'] == $_POST['confirm_password']) { $erreur = 'The two passwords are different.'; } else { $base = mysql_connect ('XXXX', 'XXX', ''); mysql_select_db ('XXXX', $base); // on recherche si ce username est déjà utilisé par un autre membre $sql = 'SELECT id FROM user WHERE username="'.mysql_escape_string($_POST['username']).'"'; $req = mysql_query($sql) or die('erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); if ($nb == 0) { $sql = 'INSERT INTO user VALUES("" ,"'.mysql_escape_string($_POST['mail_address']).'", "'.mysql_escape_string($_POST['username']).'", "'.mysql_escape_string(md5($_POST['password'].$salt)).'")'; mysql_query($sql) or die('erreur SQL !'.$sql.'<br />'.mysql_error()); // on récupère l'id de notre nouveau membre $id = mysql_insert_id(); session_start(); $_SESSION['username'] = $_POST['username']; // on stocke cet id dans une variable de session $_SESSION['id'] = $id; header('Location: index.php'); exit(); } else { $erreur = 'Another member is already using this pseudo or email'; } } } else { $erreur = 'Please fill in all fields'; } } ?>
Partager