Bonjour,
tu lis les réponses qu'on te donne, ou pas ? :weird:
Version imprimable
Bonjour,
tu lis les réponses qu'on te donne, ou pas ? :weird:
Christophe, tu ferais comme ça :
Code:
1
2
3
4
5
6
7 else // Sinon, on affiche un message d'erreur { $result->close(); $message = "prenom incorrect ."; header( 'Location: http://localhost/html/facture.php?message=' . $message); }
@solerian, oui mais en supprimant l'espace entre "incorrect" et ".". ;)
Cela ne m'affiche toujours pas de message d'erreur et une personne qui ne se trouve pas dans la table peut toujours accéder à la page suivante
Pas étonnant...
Avez-vous appliqué ce que dit jreaux62 sur mysqli_num_rows ?
--
Edit : devancé par jreaux62. :)
Je ne comprend pas du tout l'interet du
Pouvez vous me l'expliquer s'il vus plaît ainsi que son interet?Code:
1
2 $row_cnt=mysqli_num_rows($result); printf("le jeu de resultat a %d lignes.\n", $rows_cnt)
Merci pour votre aide
Stop, stop, et stop les réponses sans aucune recherche ni lecture des commentaires postés plus haut !
C'est quand même incroyable...
http://lmgtfy.com/?q=mysqli_num_rows
J'ai imprimé la doc que m'a filer jreaux, mais j'ai du mal saisir c'est tout
Alors c'est soit un problème de compréhension du français, soit de tes bases et alors il faut remonter plus haut dans tes lacunes.
Bonjour,
l'intérêt est de compter le nombre de résultats renvoyés par la requête !
C'est exactement ce que tu veux faire :
- si le nombre de résultats est égal à 1 -> OK, on a bien un enregistrement (nom-prénom) qui correspond.
- sinon, pas bon.
EXEMPLE de formulaire d'Authentification :
authentification-form.php :
Code:
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 <?php // retour : message d'erreur ? if( !empty($_GET['msqErr']) ) { $msqErr = $_GET['msqErr']; if( $msqErr == 'NoUser') { echo '<p class="msgErr">Aucun user trouvé</p>'; } elseif( $msqErr == 'FillAll') echo '<p class="msgErr">Merci de remplir nom et prenom</p>'; } } ?> <form action="authentification-traiter.php" method="post"> <fieldset> <legend>Authentification</legend> <p> <label for="nom"> nom : </label> <input type="text" name="Nom"/> </p> <p> <label for="prénom"> prénom : </label> <input type="text" name="Prénom"/> </p> <div class="button"> <button type="submit"> Valider </button> </div> </fieldset> </form>
fichier connexion.php (script de connexion à la base de donnees) : => à INCLURE (une fois, en début de script)
Code:
1
2
3
4
5
6
7 <?php require_once 'login1.php'; // il y a quoi là dedans ? les parametres de connexion ? $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $conn->set_charset ('utf8'); // encodage en utf-8
EXEMPLE de fichier authentification-traiter.php (traitement du formulaire d'authentification) :
Code:
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 <?php session_start(); require_once 'connexion.php'; // script de connexion à la base de donnees if( isset($_POST) && empty($SESSION['id_user']) ) { // Récupération des données du formulaire d'authentification $nom_recu = ( !empty($_POST['nom']) )? $_POST['nom'] : ''; $prenom_recu = ( !empty($_POST['prenom']) )? $_POST['prenom'] : ''; if( !empty($nom_recu) && !empty($prenom_recu)) { // requete : existe-t-il un enregistrement avec ce nom et ce prenom ? $sql = "SELECT id FROM users WHERE nom = ? AND prenom = ? "; // requête préparée $stmt = $mysqli->prepare( $sql ); // Lecture des marqueurs $stmt->bind_param('ss', $nom_recu, $prenom_recu); // Exécution de la requête $result = $stmt->execute() or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); // Détermine le nombre de lignes du jeu de résultats $row_cnt = $result->num_rows; if( $row_cnt == 1 ) // OK, on en a bien trouvé un ! { $row = $result->fetch(); $SESSION['id_user'] = $row['id']; // USER CONNECTE ! } else { // erreur : PAS de user avec ces nom et prenom ! $SESSION['id_user'] = ''; header('location:authentification-form.php?msqErr=NoUser'); // retour au formulaire d'authentification exit; } } else { // erreur : nom ou prenom manquant $SESSION['id_user'] = ''; header('location:authentification-form.php?msqErr=FillAll'); // retour au formulaire d'authentification exit; } } else { // rien reçu $SESSION['id_user'] = ''; header('location:authentification-form.php'); // retour au formulaire d'authentification exit; } // --------------- // USER CONNECTE ? if( !empty($SESSION['id_user']) && is_numeric($SESSION['id_user']) ) { header('location:espace-membre.php'); // ACCES AUTORISE à l'Espace Membre exit; } else { $SESSION['id_user'] = ''; header('location:authentification-form.php'); // retour au formulaire d'authentification exit; }