Hello, j'ai plusieurs problème sur le système tout bête que j'essaie de mettre en place : Premièrement, je charge un formulaire (qui est sur une page externe) au clique sur un calendrier comme ceci :
le formulaire est sur la page "formulaireajax.html" est et simple comme bonjour :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 $('td').on('click', function() { var value = $('.daytitle', this).text(); // On récupère la date de la cellule // on charge le formulaire au click sur le td, on le charge dans la div du tableau $('.reservation').load('../views/formulaireajax.html', function() { $('.reservation #textcontent').text('Vous avez choisi le ' + value); // Une fois le formulaire chargé, on remplace le contenu de textcontent }); });
Cependant au chargement qui s'effectue bien, le lien "action" reste vide alors qu'il est bien rempli dans mon code je ne comprend pas pourquoi ? Je suis obliger de le remplir dans mon navigateur.
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
30
31
32
33 <section class="formulaireajax"> <p id="textcontent">Vous avez choisi le</p> <form method="post" action="../controller/ControllerReservation.php"> <fieldset> <legend>Prendre rendez-vous</legend> <ul> <li> <label for="ajax-name">Votre nom : </label> <input type="text" name="nom" class="name"> </li> <li> <label for="ajax-emmail">Votre email : </label> <input type="text" name="email" class="mail"> </li> <li> <label for="ajax-number">Votre téléphone : </label> <input type="number" name="numero" class="number"> </li> <li> <label for="ajax-time">Heure : </label> <input type="datetime" name="heure"> </li> <li> <label for="ajax-message">Votre message : </label> <textarea colspan="3" name="message"></textarea> </li> <li> <input type="submit" value="Envoyer" name="submit" class="submit"> </li> </ul> </fieldset> </form> </section>
DEUXIEME PROBLEME BEAUCOUP PLUS IMPORTANT je charge "database.php" bon correctement je vous met le code quand même même si je sais d'ou viens le problème sait-on jamais cela peut aider d'autre personne pour l'organisation :
Je passe à mon controlleur de mon formulaire, pour verifier les données (bon je les ai pas vraiment vérifier encore puisque je suis encore en local je voulais déjà voir si l'enregistrement en BDD marcher : BINGO ça plante) :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?php $db_host = 'localhost'; $db_name = 'debarras'; $db_user = 'root'; $db_pass = ''; // Connexion à la base de données $pdo = new PDO ("mysql:host=$db_host;dbname=$db_name;charset=UTF8", $db_user, $db_pass, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC ]);
Alors effectivement "l'enregistrement" ce fait, mais les valeurs ne sont pas entré, a la place j'ai plutôt "1" "1" "1" ou pour l'heure "00:00:0000" j'ai cru comprendre que c'était dû à l'objet XHRHttpRequest, or sincèrement, je ne m'y connais pas du tout quelqu'un pour m'apprendre m'expliquer ? m'aider ?
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 if(array_key_exists('submit', $_POST)){ require_once "../database.php"; $nom = isset($_POST['nom']); $email = isset($_POST['email']); $numero = isset($_POST['numero']); $message = isset($_POST['message']); $heure = isset($_POST['heure']); $sql = "INSERT INTO reservation (email, heure, message, nom, numero) VALUES (?, ?, ?, ?, ?)"; $query = $pdo->prepare($sql); $query->execute([$email, $heure, $message, $nom, $numero]); } header("Location: ../index.php"); exit;
Partager