Bonjour à toutes et à tous,
Ce sujet est la suite de celui la:
https://www.developpez.net/forums/d1.../#post10197132
En effet, j'ai deux soucis que je n'arrivais pas à régler:
1) Checkbox: résolu - voir lien ci-dessus
2) Créer une nouvelle variable de SESSION alors que mon formulaire est lié à AJAX.
Ci-dessous une représentation de la structure de mon site.
Ce dernier fonction en 4 "blocs".
2 de ces blocs contiennent chacun 2 "blocs":
Le menu principal donne différents liens qui mènent sur le bloc "CORPS DE PAGE" (différentes pages php à chaque fois).
Certaines de ces pages php contiennent des formulaires (Cf. Lien ci-dessous et problèmes de checkbox résolu).
Le BLOC "CORPS DE PAGE" pourra contenir par moment 2 blocs:
-> la page en question (ARTICLE)
-> un menu contextuel: Ce dernier pourra changer le contenu de ARTICLE.
Mon premier questionnaire va définir le contenu de ce menu contextuel (au travers des cases à cocher notamment).
Ayant suivi des cours en php et n'ayant aucun niveau en AJAX, je souhaiterai me servir des SESSIONS pour remplir le menu contextuel.
Problème: Je n'arrive pas à générer une variable de session (Exemple: $_SESSION['Menu_Contextuel'] au travers d'AJAX.
Cette variable me permettra d’interroger une BDD est de récupérer les éléments qui alimenteront mon menu contextuel.
SCRIPT JS:
Code js : 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 $(document).ready(function() { $('.formulaire').submit(function() { var nom = $('.nom').val(); if($('.checkbox001').is(':checked')) { var checkbox001 = 1; } else { var checkbox001 = 0; } $.post('Send.php',{nom:nom,checkbox001:checkbox001},function(data) { $('.return').html(data).slidedown(); $('.nom').val(''); $('.checkbox001').val(''); }); return false; }); });
Enregistrement BDD
Code php : 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 <?php if(isset($_POST['nom'])) { $nom = htmlspecialchars($_POST['nom']); $checkbox001 = $_POST['checkbox001']; $db = new PDO('mysql:host=localhost;dbname=essai_bdd','root',''); $db->prepare("INSERT INTO ajax(nom,checkbox001) VALUES(?,?)"); $db->execute([$nom,$checkbox001]); echo "Vos données ont été envoyées"; $_SESSION['Menu_Contextuel'] = $nom; } else { echo "Veuillez compléter tous les champs"; } ?>
Partager