Bonjour,
J'essaie de faire un formulaire pour insérer des données dans ma bdd, à chaque fois l'id passe mais pas les données écrites dans les différents champs, idem lorsque je veux passer des données d'un formulaire à un autre, seul l'id passe.
N'y arrivant pas, j'ai créé une table test avec juste trois champs : id, nom, prénom, pour faire des essais plus courts et sans modifier mes autres tables, j'ai fait deux formulaires, un pour insérer les données et un autre pour afficher les données sous forme de tableau. Le problème, c'est que cela me rajoute un id mais pas les noms et prénoms écrits dans les cases du formulaire !!!
Voici le formulaire pour insérer les données :
et voici le tableau :
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 <?php error_reporting (E_ALL ^ E_NOTICE); ?> <?php include("menu.php");?> <link rel="stylesheet" href="menu/dropdown_three.css" type="text/css"> <link rel="stylesheet" href="style.css" type="text/css"> <?php include("include/db_inc_pdo.php"); // récupérer les valeurs $id = isset($_POST['id']) ? $_POST['id'] : ''; $nom = isset($_POST['nom']) ? $_POST['nom'] : ''; $prenom = isset($_POST['prenom']) ? $_POST['prenom'] : ''; // Requête mysql pour insérer des données $sql = "INSERT INTO test(nom, prenom) VALUES (:nom,:prenom)"; $res = $pdo->prepare($sql); $exec = $res->execute (array( ':nom'=>$nom, ':prenom'=>$prenom)); // vérifier si la requête d'insertion a réussi if($exec){ echo 'Données insérées'; }else{ echo "Échec de l'opération d'insertion"; } echo "<p align=left> :: essai </p>"; ?> <html> <head> <title>Insérer des données dans la table test</title> </head> <body> <form method="post" action="process.php"> <input type="hidden" name='enregistrer' value='oui' /> <input type="text" name="nom"><br> <input type="text" name="prenom"><br> <input type="submit" value="enregistrer" /> </form> </body> </html>
Voici également la table test :
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 <?php error_reporting (E_ALL ^ E_NOTICE); ?> <?php include("menu.php");?> <link rel="stylesheet" href="menu/dropdown_three.css" type="text/css"> <link rel="stylesheet" href="style.css" type="text/css"> <?php $nom = isset($_POST['nom']) ? $_POST['nom'] : ''; $prenom = isset($_POST['prenom']) ? $_POST['prenom'] : ''; include("include/db_inc_pdo.php"); ?> <table class="bicolor" border="1" align="center"> <tr> <th>ID</th> <th>Nom</th> <th>Prénom</th> </tr> <?php $reponse = $pdo->query('SELECT id, nom, prenom FROM test'); while ($donnees = $reponse->fetch()) { //On affiche les données dans le tableau echo "<tr>"; echo "<td> $donnees[id] </td>"; echo "<td> $donnees[nom] </td>"; echo "<td> $donnees[prenom] </td>"; echo "</td>"; echo "</tr>"; } $reponse->closeCursor(); ?>
Qu'est-ce que je fais faux ? est-ce que j'ai oublié quelque chose ?
Si j'arrive à faire ce petit bout de code, j'arriverai avec plus de champs.
D'avance merci de m'aider à résoudre ce problème sur lequel je sèche depuis plusieurs jours![]()
Partager