Bonjour à Tous,
j'ai réalisé un formulaire pour lequel toutes les réponses sont stockées dans une variable tableau "myArray".
J'aimerais maintenant envoyer ces réponses pour qu'elles soient stockées dans la base de données de mon serveur mais j'éprouve quelques difficultés.
Je m'y suis certainement mal pris.
La première chose que j'ai faite a été de "séréaliser" les données de mon tableau avec JSON:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var answers = JSON.stringify(myArray);
ensuite, j'envoie le tout vers mon script PHP de la manière suivante en jquery:
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 $.ajax({ url : "add.php", type : "POST", dataType: "json", data: answers, success : function(response) { $('#next').hide(); $('#previous').hide(); $('.page17').hide(); if ('success' in response) { $('.completed-message').text('Merci de votre participation à cette enquête!<br><br>'+response['success']); } else if ('error' in response) { $('.completed-message').text('Une erreur est survenue: '+response['error']); $('#next').hide(); $('#previous').hide(); $('.page17').hide(); } else { $('.completed-message').text('Une erreur inconnue est survenue.'); $('#next').hide(); $('#previous').hide(); $('.page17').hide(); } }, error: function(xhr, status, error) { $('#next').hide(); $('#previous').hide(); $('.page17').hide(); $('.completed-message').text('Une erreur est survenue: envoi impossible des données au serveur'+ error['error']); } });
mon code PHP est le suivant (et je pense que mon erreur se trouve ici):
Le reste du code PHP fonctionne bien puisque dans ma table "aucune donnée n'a été reçue" s'inscrit bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(isset($_POST['answers'])) $answers= json_decode($_POST['answers']); else $answers="aucune donnée n'a été reçue";
par contre, côté navigateur, je reçois l'erreur "Une erreur est survenue: envoi impossible des données au serveur undefined" qui correspond au cas de figure de ma fonction $.ajax
Est-ce que quelqu'un aurait une idée de là où ça pourrait coincer?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 error: function(xhr, status, error) { $('#next').hide(); $('#previous').hide(); $('.page17').hide(); $('.completed-message').text('Une erreur est survenue: envoi impossible des données au serveur'+ error['error']); }
Est-ce que c'est bien un $answers= json_decode($_POST['answers']); que je dois écrire côté PHP pour récupérer mes réponses?
Merci d'avance pour votre aide!
Partager