Téléchargement
illégal
Posez votre question Signaler

[Ajax][JavaScript] ne pas perdre données POST

moije - Dernière réponse le 21 avril 2010 à 15:42
Bonjour,
Je souhaite garder mes données POST durant toute la navigation sur mon site. Mais je ne vois pas comment faire.
J'ai trois fichiers principaux : l'index, un fichier JavaScript, et un contrôleur ajax.
Dans l'index, j'appelle une fonction js avec un argument.
La fonction js transmet l'argument au contrôleur en POST.
Le contrôleur ajax fait un echo de contenu et le js traite ce contenu.
(et l'index traite les données s'il y en a)
Le contenu, en l'occurrence, peut être un formulaire, dont les données sont elles-aussi passées par POST.
Je ne suis pas sûr de faire comme il faudrait, mais bon... (Il faut me le dire, si c'est le cas!)
Ce que je voudrais, donc (et enfin!), c'est garder toutes les données POST qui ont pu être générées.
J'ai par exemple 2 formulaires à la suite. quand je clique sur submit du 2eme formulaire, je n'ai plus les données POST du premier, et j'en ai besoin!
Mes explications sont très brouillonnes, mais si un courageux pouvait me donner un coup de main...
Lire la suite 

[Ajax][JavaScript] ne pas perdre données POST »

7 réponses
Réponse
+1
moins plus
exemple très simple :

1er formulaire page1.php
<form name="form1" action="page2.php" method="POST">
Nom :  <input type="text" name="nom">
<br>
<input type="submit" value="envoyer">
</form>



2eme formulaire page2.php
<form name="form2" action="page3.php" method="POST">
<input type="hidden" name="nom" value="<?php echo $_POST['nom']; ?>">
prenom :  <input type="text" name="prenom">
<br>
<input type="submit" value="envoyer">
</form>



page d'affichage page3.php

<?php 
echo "nom : ".$_POST['nom']; 
echo "prenom : ".$_POST['prenom']; 
?>



Adns
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour

une idée de réponse :

lors de l'envoi de ton premier formulaire et l'affichage du seconde insère les données que tu veux garder dans des champs cachés (type: hidden)

Adns
Mike - 21 avril 2010 à 11:59
Ouai je pense la même solution que adns, ou sinon s'orienter vers les variables de sessions.
Ajouter un commentaire
Réponse
+0
moins plus
Je ne vois pas comment mettre dans des champs cachés, mais de toute façon, les variables de sessions me semblent plus pertinentes... je crois...

Merci à vous deux
Ajouter un commentaire
Réponse
+0
moins plus
Oui mais page2.php ne connait déjà plus $_POST['nom']!

Pour l'instant, je fais :
<script type="text/javascript">
$(function(){
choixPage("<?php echo $_POST['page'];?>");
});
</script>
Il n'y aurait pas possibilité de passer tout le $_POST ?
Ajouter un commentaire
Réponse
+0
moins plus
Ce qu'a fait Adns fonctionne très bien, car sachant que dans sa page deux, il stock $_POST['nom'] dans une input de type hidden et de name = 'nom',
donc lorsque tu valides le formulaires de la page 2, il envois en post la valeur de l'input type hidden nommé 'nom'.

Si tu comprend pas de trop le code, change la methode POST en GET, et regarde le cheminement des variables.
Ajouter un commentaire
Réponse
+0
moins plus
ça ne fonctionne pas, ça.

Les données POST sont perdues lorsque je génère le formulaire2.

Du coup, je me demande si je fais comme il faut pour générer mes pages...
Ajouter un commentaire
Ce document intitulé « [Ajax][JavaScript] ne pas perdre données POST » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?