Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 30-04-2009 11:01:03

kindy
Membre
Date d'inscription: 17-04-2009
Messages: 32

passer un tableau par l'url

bonjour,

j'ai un premier formulaire où j'insère quelques informations. Celui ci me renvoi sur un second formulaire.
Une fois ce second formulaire rempli, je souhaiterai insérer dans ma base les informations de mon premier formulaire et de mon second.
Je souhaiterai donc savoir si on peut passer un tableau (qui résulte d'un getValues() ) par l'URL ?
Si oui comment faire ?

J'ai tenter de faire

$formData=$form->getValues();
$this->_redirect('GererStock/produitlivraison/livraison/'.$formData);


Je n'ai aucune erreur, et dans mon URL j'ai :

http://localhost/center/GererStock/produitlivraison/livraison/Array


Je récupère mes données comme ceci :

if ($this->_hasParam('livraison'))
{
    $livraison = $this->_getParam('livraison');
    $this->view->liv=$livraison;
}


Est ce la bonne méthode pour passer mon tableau et le récupérer ?
Merci

Hors ligne

 

#2 30-04-2009 11:17:42

Djules
Membre
Date d'inscription: 29-03-2009
Messages: 52
Site web

Re: passer un tableau par l'url

Pour découper ton formulaire en plusieurs pages, tu dois utiliser les SubForms avec la méthode

Code:

$form->addSubForm($subform, 'subform');

Vois ici pour plus de détails. Malheureusement cette partie n'a pas été traduite dans la doc.

Dernière modification par Djules (30-04-2009 11:17:55)

Hors ligne

 

#3 30-04-2009 11:19:46

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: passer un tableau par l'url

pourquoi passer par l'url alors qu'il suffit de garder les données de ton premier formulaire en session ???
A+JYT

Hors ligne

 

#4 30-04-2009 11:35:04

kindy
Membre
Date d'inscription: 17-04-2009
Messages: 32

Re: passer un tableau par l'url

merci pour vos réponses wink

j'ai retenue la réponse de djules pour mon cas

Hors ligne

 

#5 30-04-2009 15:42:45

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: passer un tableau par l'url

Oui convertir un tableau vers une chaine, en PHP, ça a toujours donné 'Array' en effet :-D
En revanche, le sérialiser, puis le base64_encoder permet de l'ajouter dans l'URL, mais ça n'est pas recommandé.

D'abord, parce qu'une URL ça doit pas être trop long, or un tableau sérialisé ca peut vite devenir très long.
Ensuite, parce qu'un pirate potentiel peut facilement injecter ce qu'il veut dans l'URL, et donc dans le tableau qui sera recrée derrière, il peut par exemple créer un tableau avec une profondeur de 400.000 et 1 millions d'éléments, très facilement, ce qui aura pour conséquence de crasher le serveur (sauf si PHP est à jour et que max_input_nesting_level est à un niveau raisonnable dans PHP.ini)

La session reste encore le mieux pour passer ce genre de variables ;-)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages