Passer un tableau javascript en php via ajax
Résolu/Fermé
abirgl
Messages postés
127
Date d'inscription
lundi 31 octobre 2016
Statut
Membre
Dernière intervention
20 juin 2017
-
1 févr. 2017 à 15:13
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 8 févr. 2017 à 11:53
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 8 févr. 2017 à 11:53
A voir également:
- Ajax send array
- Local send - Télécharger - Divers Utilitaires
- Send to windows 10 - Guide
- Net send android - Forum Réseau
- Net send gui - Télécharger - Messagerie
- Trying to access array offset on value of type bool ✓ - Forum PHP
1 réponse
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
1 févr. 2017 à 16:29
1 févr. 2017 à 16:29
Salut,
Ton code fonctionne mais au premier chargement de la page, la variable $_POST['tab'] n'existe pas encore (créée ensuite par la requête ajax) d'où le message d'erreur.
Il faut vérifier l'existence de cette variable avec isset ou empty.
Au passage :
- en html5, plus besoin de préciser l'attribut type pour du code js sur les balises script
- pas besoin de fermer et ouvrir les balises script si il n'y a rien entre les deux
- tu peux cibler la page actuelle en utilisant le symbole #
Exemple de correction :
Bonne journée,
Ton code fonctionne mais au premier chargement de la page, la variable $_POST['tab'] n'existe pas encore (créée ensuite par la requête ajax) d'où le message d'erreur.
Il faut vérifier l'existence de cette variable avec isset ou empty.
Au passage :
- en html5, plus besoin de préciser l'attribut type pour du code js sur les balises script
- pas besoin de fermer et ouvrir les balises script si il n'y a rien entre les deux
- tu peux cibler la page actuelle en utilisant le symbole #
Exemple de correction :
<?php if (isset($_POST['tab'])) { $myTable = $_POST['tab']; print_r($myTable); } else { ?> <script> var tab=['a','b','c','d']; $.ajax({ type: "POST", url: "#", data: { tab : tab}, success: function(data) { alert(data); } }); </script> <?php } ?>
Bonne journée,
1 févr. 2017 à 16:47
merci pour les remarques ^^ ,
j'ai testé le code que vous avez posté mais ça n'a rien affiché, j'ai fait f12 pour voir ce qui s'affiche en console et j'ai trouvé l'erreur :"Uncaught ReferenceError: $ is not defined at ..."
:(
Modifié par Pitet le 1/02/2017 à 17:05
Puisque tu ne l'avais pas précisé dans ton premier code, je pensais que tu l'avais déjà inclus.
Sinon :
PS : sans le
1 févr. 2017 à 17:11
2 févr. 2017 à 09:46
Le tableau affiché en alert provient de l'affichage du tableau php. Si tu n'a pas besoin de récupérer le résultat de ton traitement php via javascript, la requête ajax est alors inutile et tu pourrais simplement utiliser un formulaire.
Modifié par abirgl le 2/02/2017 à 10:39
Je crois que j'ai pas bien expliqué mon besoin, j'essaye de réexpliquer :
J'ai un tableau javascript (il n'est pas le résultat d'un traitement php, c'est un simple tableau javascript)
par suite, je veux utiliser ce tableau pour un traitement php, j'ai pas trouvé comment le passer de javascript à php, on m'a dit que ajax est la solution , et voilà j'essaye de transmettre mon tableau javascript via ajax pour récupérer enfin un tableau php,
le tableau dont j'ai besoin en php doit être comme suit :
$tab=array('a','b','c','d');
Est ce que c'est possible de le faire avec ajax ou je dois chercher une autre façon de faire ceci ?
PS: Tout le traitement doit s'effectuer dans la même page (dans url de la fonction ajax ça doit rester #)
Merci énormément pour vos réponses et vos efforts