Bonjour, c'est la première fois que je poste un message car je n'aime pas "demander" et "déranger" pour des questions qui vont certainement vous paraître enfantines mais tant pis je tente ma chance.
Je vous explique mon problème qui somme toute paraît assez simple mais que je n'arrive pas à résoudre.
J'ai 3 fichiers (je vous mettrai les codes juste après):
1) un fichier d'accueil (index.php) contenant un formulaire de recherche d'ingrédient
2) un fichier affichant le résultat de la recherche (recherche_ing.php)
3) un fichier d'ajout d'un ingrédient non trouvé (ajout_ing.php)
Mon but est de récupérer la valeur contenue dans index.php (nommée Id_ing) sur la page ajout_ing.php si l'ingrédient n'a pas été trouvé.
Sachant que sur la page recherche_ing.php j'arrive bien à récupérer la valeur de Id_ing (vérifié par un écho).
J'ai donc créé une variable $_SESSION que j'ai mise en début de fichier recherche_ing.php et dès que j'essaie de réutiliser cette donnée dans ajout_ing.php il génère le message d'erreur suivant:
Je me trompe très certainement dans la syntaxe mais je ne vois pas où est mon erreur.Undefined variable: _SESSION in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\test\ajout_ing.php on line 2
Merci de m'aiguiller.
Cordialement,
Christophe
Code des pages
Index.php
recherche_ing.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <html> <header> <title>Bienvenue sur le site</title> </header> <body> <form name= "ingredient" method = "post" action="recherche_ing.php"> Tapez le nom d'un ingrédient :<input type = "text" name ="Id_ing" /> <input type = "submit" name = "Valid" value = "Valider"> <br> </form> </html>
ajout_ing.php
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 <?php session_start(); $id = $_POST['Id_ing']; $_SESSION ['Id_ing'] = $id; echo $id; try { $bdr= new PDO('mysql:host=localhost;dbname=recettes;charset=utf8', 'root', ''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $requete = $bdr->prepare('SELECT lib_ing from ingredients where lib_ing LIKE ?'); $requete->execute(array("$id%")); $nbresult = $requete->rowcount(); echo '<br>'; if ($nbresult == 0) { echo "ingrédient non trouvé. Voulez-vous rajouter cet ingrédient à la liste?"; ?> <form name = "ajout_ing" method= "post" action= "ajout_ing.php"> <input type = "submit" value = "Oui" name ="ajout_ing"/> </form> <form name = "retour" method= "post" action= "index.php"> <input type = "submit" value = "Non" /> <?php } else { while($donnees = $requete->fetch()) { echo '<li>'. $donnees['lib_ing']; } } ?>
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 <?php $id= $_SESSION['Id_ing']; echo $id; /*try { $bdr= new PDO('mysql:host=localhost;dbname=recettes;charset=utf8', 'root', ''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $requete=$bdr->prepare ("insert into 'ingredients' values '','?'"); $requete->execute(array($id)); echo "ingrédient ajouté avec succès"; */ ?> <form name= "retour" action = "index.php"> <input type = "submit" value = "retour" /> </form>







Répondre avec citation
Partager