De ce fait ma requête n'est plus bonne si je dois m'appuyer sur les id ?
Sur la seconde page web comment je vais faire lien par rapport à la première ?
Ou alors j’exécute mes requêtes depuis la deuxième page ?
Version imprimable
De ce fait ma requête n'est plus bonne si je dois m'appuyer sur les id ?
Sur la seconde page web comment je vais faire lien par rapport à la première ?
Ou alors j’exécute mes requêtes depuis la deuxième page ?
Voici le code HTML :
Voici la feuille de style :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 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>habilitation</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <h1><center><br> habilitation facture </br></center></h1> <legend> demande d'habilitation : </legend> <fieldset> <form action="facture.php" method="post"> <p> <label for="nom"> nom : </label> <input type="text" name="Nom"/><br> <label for="prénom"> prénom : </label> <input type="text" name="Prénom"/><br> </p> <div class="button"> <button type="submit"> Valider </button> <button type="submit"> Annuler </button> </div> </form> </fieldset> <img src ='carmi.png'> </body> </html>
Code:
1
2
3
4
5 h1 { color :skyblue; font-size :3em; font-family :Arial; }
On aurait ça :
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
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 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>habilitation</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <h1><center><br> habilitation facture </br></center></h1> <legend> demande d'habilitation : </legend> <fieldset> <form action="facture.php" method="post"> <p> <label for="nom"> nom : </label> <input type="text" name="Nom"/><br> <label for="prénom"> prénom : </label> <input type="text" name="Prénom"/><br> </p> <div class="button"> <button type="submit"> Valider </button> <button type="submit"> Annuler </button> </div> </form> </fieldset> <img src ='carmi.png'> </body> </html> <? // On commence par récupérer les champs if(isset($_POST['nom'])) $nom=$_POST['nom']; else $nom=""; if(isset($_POST['prenom'])) $prenom=$_POST['prenom']; else $prenom=""; // On vérifie si les champs sont vides // connexion à la base require_once 'login1.php'; $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $query = "SET NAMES utf8"; // Force l'encodage en utf-8 $result = $conn->query($query); if (!$result) die($conn->error); if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); // on recupère le password de la table qui correspond au login du visiteur $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; // ici vous pouvez afficher un lien pour renvoyer // vers la page d'accueil de votre espace membres } } else { echo '<p>Vous avez oublié de remplir un champ.</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; // ici vous pouvez afficher un lien pour renvoyer // vers la page d'accueil de votre espace membres } } else { echo '<p>Vous avez oublié de remplir un champ.</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } ?>
Je t'ai dis quoi par rapport à ton php?
Ton formulaire appel facture.php, donc tu mets ton php dans facture.php.
Quand tu cliques sur ton bouton pour soumettre ton formulaire, ça va directement dans facture.php, ça va pas chercher ton PHP à la fin de ton HTML...
Voici mon code se trouvant dans facture.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
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 <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <? // pensez a ouvrir une connexion vers mysql ici // voir les exercices dans le menu de droite pour cela. if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); // on recupère le password de la table qui correspond au login du visiteur $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; // ici vous pouvez afficher un lien pour renvoyer // vers la page d'accueil de votre espace membres } } else { echo '<p>Vous avez oublié de remplir un champ.</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; // ici vous pouvez afficher un lien pour renvoyer // vers la page d'accueil de votre espace membres } } else { echo '<p>Vous avez oublié de remplir un champ.</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } ?> <h1><center> Facture </center></h1> <p> Les champs sont les suivants : </p> <p> Nom du client, n°client, n°facture </p> <legend>Mots clés :</legend> <fieldset> <form method="POST" action="liste_facture.php"> <center> <input type="text" name="nomclient" size="30" value="nomclient" maxlength="50"><br> <br> <input type="text" name="numclient" size="30" value="numclient" maxlength="6"><br> <br> <input type="text" name="numfacture" size="30" value="numfacture" maxlength="6"><p> le champs fichierfacture peut rester vide <p> <input type="text" name="fichierfacture" size="30" value="fichierfacture" maxlength="50"><br> <br> <input type="submit" value="Rechercher" name="Rechercher"> </center> </form> </fieldset> <img src ='carmi.png'> <br> </body> </html>
Tu as un sérieux problème sur les bases du développement en PHP et en HTML.
Tu ne redéfinis pas un <html>, un <head>, un <body>... Ton PHP ici, sert juste à vérifier la connexion et la validité des infos
il faut bien que je déclare un autre formulaire j'en ai besoin ou alors je fais un formulaire en php
Bonjour,
1/je ne sais pas d'où tu sors tes cours, mais il y a un certain nombre de chose à revoir, et à EVITER.Code:// voir les exercices dans le menu de droite pour cela.
1a/Non. On écrit :Code:<?
1b/Code:<?php
Voir : extract()Code:extract($_POST);
2/Citation:
Avertissement
N'utilisez pas extract() sur des données inconnues, comme les données utilisateurs (i.e. $_GET, $_FILES, etc.). Si vous le faites, par exemple, pour rendre compatible un vieux code avec register_globals à Off de façon temporaire, assurez-vous d'utiliser l'une des constantes flags qui n'écrasent pas les valeurs, comme EXTR_SKIP. Sachez aussi que vous devez maintenant extraire dans le même ordre que celui défini dans variables_order du php.ini.
Ca ne veut rien dire.Code:...ou alors je fais un formulaire en php
PHP est un langage de programmation, HTML celui d'affichage.
Au final, ce qui s'affiche sur le navigateur, c'est du HTML !
Voici mon code
Je ne comprend pas ce message d'erreur :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
61
62
63
64
65
66
67
68
69
70
71
72
73
74 <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <?php require_once 'login1.php'; $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $query = "SET NAMES utf8"; // Force l'encodage en utf-8 $result = $conn->query($query); if (!$result) die($conn->error); if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; } ?> <h1><center> Facture </center></h1> <p> Les champs sont les suivants : </p> <p> Nom du client, n°client, n°facture </p> <legend>Mots clés :</legend> <fieldset> <form method="POST" action="liste_facture.php"> <center> <input type="text" name="nomclient" size="30" value="nomclient" maxlength="50"><br> <br> <input type="text" name="numclient" size="30" value="numclient" maxlength="6"><br> <br> <input type="text" name="numfacture" size="30" value="numfacture" maxlength="6"><p> le champs fichierfacture peut rester vide <p> <input type="text" name="fichierfacture" size="30" value="fichierfacture" maxlength="50"><br> <br> <input type="submit" value="Rechercher" name="Rechercher"> </center> </form> </fieldset> <img src ='carmi.png'> <br> </body> </html>
Parse error: syntax error, unexpected end of file in C:\wamp\www\html\facture.php on line 91
Tu nous mets une erreur ligne 91, et tu postes un code avec 76 lignes. :weird:
J'ai enlevé les blancs désolé mais c'est au niveau de la toute derniere apres </html> qu'il rale
Met ton code tel quel, si tu le bidouilles avant de le poster, c'est pas un cadeau...
message d'erreurCode:
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 <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <?php require_once 'login1.php'; $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $query = "SET NAMES utf8"; // Force l'encodage en utf-8 $result = $conn->query($query); if (!$result) die($conn->error); if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; } ?> <h1><center> Facture </center></h1> <p> Les champs sont les suivants : </p> <p> Nom du client, n°client, n°facture </p> <legend>Mots clés :</legend> <fieldset> <form method="POST" action="liste_facture.php"> <center> <input type="text" name="nomclient" size="30" value="nomclient" maxlength="50"><br> <br> <input type="text" name="numclient" size="30" value="numclient" maxlength="6"><br> <br> <input type="text" name="numfacture" size="30" value="numfacture" maxlength="6"><p> le champs fichierfacture peut rester vide <p> <input type="text" name="fichierfacture" size="30" value="fichierfacture" maxlength="50"><br> <br> <input type="submit" value="Rechercher" name="Rechercher"> </center> </form> </fieldset> <img src ='carmi.png'> <br> </body> </html>
( ! ) Parse error: syntax error, unexpected end of file in C:\wamp\www\html\facture.php on line 78
Il manquait une parenthèse fermante.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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <?php require_once 'login1.php'; $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $query = "SET NAMES utf8"; // Force l'encodage en utf-8 $result = $conn->query($query); if (!$result) die($conn->error); if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; } } ?> <h1><center> Facture </center></h1> <p> Les champs sont les suivants : </p> <p> Nom du client, n°client, n°facture </p> <legend>Mots clés :</legend> <fieldset> <form method="POST" action="liste_facture.php"> <center> <input type="text" name="nomclient" size="30" value="nomclient" maxlength="50"><br> <br> <input type="text" name="numclient" size="30" value="numclient" maxlength="6"><br> <br> <input type="text" name="numfacture" size="30" value="numfacture" maxlength="6"><p> le champs fichierfacture peut rester vide <p> <input type="text" name="fichierfacture" size="30" value="fichierfacture" maxlength="50"><br> <br> <input type="submit" value="Rechercher" name="Rechercher"> </center> </form> </fieldset> <img src ='carmi.png'> <br> </body> </html>
Parse error: syntax error, unexpected '}' in C:\wamp\www\html\facture.php on line 52Code:
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 <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <?php require_once 'login1.php'; $conn = new mysqli($hn, $un, $pw, $db); if ($conn->connect_error) die($conn->connect_error); $query = "SET NAMES utf8"; // Force l'encodage en utf-8 $result = $conn->query($query); if (!$result) die($conn->error); if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom'])) { extract($_POST); $sql = "select nom prenom from users where nom='".$nom."' and prenom ='".$prenom."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if($data['nom'] != $nom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['nom'] = $nom; echo 'Vous etes bien logué'; } if($data['prenom'] != $prenom) { echo '<p>Mauvais nom. / prenom. Merci de recommencer</p>'; include('facture.php'); // On inclut le formulaire d'identification exit; } else { session_start(); $_SESSION['prenom'] = $prenom; echo 'Vous etes bien logué'; } } ?> <h1><center> Facture </center></h1> <p> Les champs sont les suivants : </p> <p> Nom du client, n°client, n°facture </p> <legend>Mots clés :</legend> <fieldset> <form method="POST" action="liste_facture.php"> <center> <input type="text" name="nomclient" size="30" value="nomclient" maxlength="50"><br> <br> <input type="text" name="numclient" size="30" value="numclient" maxlength="6"><br> <br> <input type="text" name="numfacture" size="30" value="numfacture" maxlength="6"><p> le champs fichierfacture peut rester vide <p> <input type="text" name="fichierfacture" size="30" value="fichierfacture" maxlength="50"><br> <br> <input type="submit" value="Rechercher" name="Rechercher"> </center> </form> </fieldset> <img src ='carmi.png'> <br> </body> </html>
Bonjour,
Le message est clair, non ?
Oui mais même lorsque je la retire ça ne fonctionne pas
Il faut apprendre à lire et à comprendre les messages d'erreur.
C'est le B-A-BA du débogage...
En l'occurence : compte les { et }, et vérifie leur ouverture/fermeture.
Remarque : l'erreur peut venir de lignes au dessus de celle citée.
[EDIT] Je ne vois pas d'erreur d'accolades dans le code que tu montres.
PAR CONTRE, je vois un fichier INCLUS :
=> à vérifier.Code:include('facture.php');