Bonjour,
J'apprends la programmation sur le tas et vous expose un problème ou je sèche totalement. J'ai créé un formulaire d'inscription avec les vérifications d'usages :
La page me retourne toujours l'erreur : "Au moins un des champs est vide."
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 <?php if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') { if (empty($_POST['hidden'])) { if (!empty($_POST['login']) && (!empty($_POST['pass'])) && (!empty($_POST['pass_confirm'])) && (!empty($_POST['email'])) && (!empty($_POST['email_confirm']))) { if ($_POST['pass'] == $_POST['pass_confirm']) { if ($_POST['email'] == $_POST['email_confirm']) { $base = mysql_connect ('localhost', 'root', ''); mysql_select_db ('membre', $base); $sql = 'SELECT count(*) FROM connexion WHERE login="'.mysql_escape_string($_POST['login']).'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); if ($data[0] == 0) { $sql = 'INSERT INTO connexion VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'", "'.mysql_escape_string($_POST['login']).'")'; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); session_start(); $_SESSION['login'] = $_POST['login']; header('Location: espace_membre.php'); exit(); } else { $erreur = 'Un membre possède déjà ce login.'; } } else { $erreur = 'Les 2 adresses mail sont différentes'; } } else { $erreur = 'Les 2 mots de passe sont différents.'; } } else { $erreur = 'Au moins un des champs est vide.'; } } else { $erreur = 'Sale bot !!'; } } ?> <html> <head> <title>Inscription</title> <link rel="stylesheet" href="style.css" /> </head> <body> <div class="block"> <form action="inscription.php" method="post"> <label for="login">Login : </label><input type="text" id=" <?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"> <br /> <label for="pass">Mot de passe : </label><input type="password" id=" <?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"> <br /> <label for="pass_confirm">Confirmation du mot de passe : </label><input type="password" id=" <?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"> <br /> <label for="email">Email :</label><input type="text" id=" <?php if (isset($_POST['email'])) echo htmlentities(trim($_POST['email'])); ?>"> <br /> <label for="email_confirm">Confirmation de l'email : </label><input type="text" id=" <?php if (isset($_POST['email_confirm'])) echo htmlentities(trim($_POST['email_confirm'])); ?>"> <br /> <label for="hidden"></label><input type="hidden" id="<?php if (isset($_POST['hidden'])) echo htmlentities(trim($_POST['hidden'])); ?>"> <p><input type="submit" name="inscription" value="Inscription"></p> </form> </div> <?php if (isset($erreur)) echo '<br />',$erreur; ?> </body> </html>
Cf code ligne 28,
même lorsque toutes les conditions sont bien remplies.
Code : Sélectionner tout - Visualiser dans une fenêtre à part } else { $erreur = 'Au moins un des champs est vide.';
Je suppose qu'il y a un soucis en ligne 4 mais ne trouve pas.
Si vous aviez la bonté de m'aiguiller !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part if (!empty($_POST['login']) && (!empty($_POST['pass'])) && (!empty($_POST['pass_confirm'])) && (!empty($_POST['email'])) && (!empty($_POST['email_confirm']))) {
De même, toute remarque sur le code est la bienvenue.
Partager