Bonjour à toutes et à tous,
Pour un projet j'ai appris PHP/MySQL... et au fil de mes découvertes, on m'oriente vers AJAX afin d'éviter de recharger trop de pages...
Après un tutoriel et quelques heures à trifouiller les codes pour comprendre comment cela s'imbrique... c'est magique! Sauf pour les checkbox...
De mon formulaire j'arrive à récupérer les valeurs des <input type="text"> et les mettre dans la BDD.
Pour les checkbox pas moyen de récupérer les valeurs cochée/ pas cochée.
Merci d'avance pour votre aide
-----------------------------------------------------------------------
Mon code est partagée sur 3 pages:
Page formulaire.php
Page Script.js
Page Enregistrer_Dans_BDD.php => Send.php
Après m'être amusé plusieurs heures, le hic vient de Script.js.
Ne connaissant pas java, je pense que je n'utilise pas les bons paramètres.
FORMULAIRE
Code html : 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 <!doctype html> <html> <head> <script src ="Jquery.js"></script> <script src ="Script.js"></script> </head> <body> <form method="post" class="formulaire"> <div class="return"></div> <input type="text" class="nom"><br> <input type="checkbox" name="checkbox001" class="checkbox001"> <input class="submit" type="submit" value="Envoyer"> <div class="afficher"></div> </form> </body> </html>
Script.JS
SEND.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 $(document).ready(function() { $('.formulaire').submit(function() { var nom = $('.nom').val(); if(document.getElementByID("checkbox001").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; }); });
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 <?php if(isset($_POST['nom'])) { $nom = htmlspecialchars($_POST['nom']); $checkbox001 = $_POST['checkbox001']; $db = new PDO('mysql:host=localhost;dbname=essai_bdd','root',''); $db->exec("INSERT INTO ajax(id,nom,checkbox001) VALUES('''$nom','$checkbox001')"); echo "Vos données ont été envoyées"; } else { echo "Veuillez compléter tous les champs"; } ?>
Partager