[PHP] passer un array par la methode post
Résolu
krabs
-
Dest -
Dest -
Bonjour,
Je cherche a passer un tableau a une autre page en utilisant le méthode post.
J'ai tester une fonction serialize($data) ce qui donne un résultat du type : a:2:{i:0;s:9:"reference";i:1;i:17;}
pour $ref = "reference" et $nb = 17
quand sur la même page en guise de test j'exécute la fonction unserialize je récupère bien mon tableau
Par contre quand je passe la variable $test a mon autre page et que j'exécute le même script je ne le récupère pas :'(
Merci de votre aide
Je cherche a passer un tableau a une autre page en utilisant le méthode post.
$data = array($ref,$nb);
J'ai tester une fonction serialize($data) ce qui donne un résultat du type : a:2:{i:0;s:9:"reference";i:1;i:17;}
pour $ref = "reference" et $nb = 17
quand sur la même page en guise de test j'exécute la fonction unserialize je récupère bien mon tableau
$test = serialize($data); $test_u = unserialize($test); echo $test_u[0].$test_u[1];
Par contre quand je passe la variable $test a mon autre page et que j'exécute le même script je ne le récupère pas :'(
$data = $_POST['data']; echo $data."<br>"; $array = unserialize($data); echo $array[0]." and value is :".$array[1];
Merci de votre aide
A voir également:
- [PHP] passer un array par la methode post
- Passer de qwerty a azerty - Guide
- Passer a windows 10 - Accueil - Mise à jour
- Easy php - Télécharger - Divers Web & Internet
- Brouillon post instagram - Guide
- Passer un texte en majuscule - Guide
8 réponses
Salut,
J'ai fait un truque tout simple ..
et je recupere sa avec :
J'ai fait un truque tout simple ..
<form action="test.php" method="POST"> <?php $name = "reference"; $value = 17; $data = array($name,$value); $test = serialize($data); echo $test; echo "<br><input type='text' value='".$test."' name='data' />"; $test_u = unserialize($test); echo $test_u[0].$test_u[1]; ?> <input type="submit" /> </form>
et je recupere sa avec :
<?php $data = $_POST['data']; echo $data."<br>"; $array = unserialize($data); echo $array[0]." and value is :".$array[1]; ?>
j'ai galéré aussi avec la méthode post ^^' j'ai pas tout lu donc je ne sais pas si quelqu'un a déjà proposé ça mais voilà ma solution :) :
echo "<br><input type='text' value='".htmlspecialchars($test, ENT_QUOTES)."' name='data' />";
echo "<br><input type='text' value='".htmlspecialchars($test, ENT_QUOTES)."' name='data' />";
et le résultat est loin d'être probant :S
a:2:{i:0;s:9:\"reference\";i:1;i:17;}
and value is :
a priori je voit pas d'erreur mais il doit bien en avoir une :D
a:2:{i:0;s:9:\"reference\";i:1;i:17;}
and value is :
a priori je voit pas d'erreur mais il doit bien en avoir une :D
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je pense pas que l'erreur vienne de l'envoie de la variable puisque je la récupère correctement:
le $data = $_POST['data']; echo $data."<br>"; s'affiche bien on le voit sur la page.
le $data = $_POST['data']; echo $data."<br>"; s'affiche bien on le voit sur la page.
Salut, chez moi ça marche avec ce code:
il faut donner un name et une value à ton bouton submit
et test.php:
il faut donner un name et une value à ton bouton submit
<form action="test.php" method="POST"> <?php $name = "reference"; $value = 17; $data = array($name,$value); $test = serialize($data); echo $test; echo "<br><input type='text' value='".$test."' name='data' />"; $test_u = unserialize($test); echo $test_u[0].$test_u[1]; ?> <input type="submit" name="envoyer" value="Envoyer"/> </form>
et test.php:
<?php $data = $_POST['data']; echo $data."<br>"; $array = unserialize($data); echo $array[0]." and value is :".$array[1];
Si justement le champ $data contien le resultat : a:2:{i:0;s:9:\"reference\";i:1;i:17;}
le pb vient apres:
$array = unserialize($data);
echo $array[0]." and value is :".$array[1]; affiche le resultat : "and value is"
$array[0] et $array[1] n'ont apparement pa de valeur :S
le pb vient apres:
$array = unserialize($data);
echo $array[0]." and value is :".$array[1]; affiche le resultat : "and value is"
$array[0] et $array[1] n'ont apparement pa de valeur :S
c'est une fonction de base php mais sinon pour les éventuelles fautes d'orthographe c'est un copier coller ;)