2011-05-25 3 views
0

Comment enregistrer une variable avec codeigniter à travers les pages sur un formulaire, sur la première page je reçois toutes les variables dont j'ai besoin sur le formulaire, je veux enregistrer ces variables à postData, être en mesure d'y accéder sur everypage forme?Passer les variables globales à travers le formulaire php?

+0

Vous pouvez essayer de les ajouter en tant que champs de formulaire cachés, et ils seront transmis dans le $ _POST. – Dan

+0

puis-je le faire dans la vue ou dans l'en-tête – Technupe

+1

Vous pouvez le faire dans la vue, mais l'utilisation de sessions serait probablement mieux adaptée. – Ross

Répondre

0

Dans la plupart des cas, l'approche la plus simple consisterait à tirer parti des sessions. Par exemple, pour affecter votre var "global" à l'aide des sessions en php:

session_start();
$_SESSION["var_name"] = $temp_var;

S'il vous plaît noter: session_start(); doit figurer sur chaque page lors du référencement des variables de session. ** Remarque: Si vous allez sur la route des champs de saisie de formulaire caché, tous les utilisateurs seront en mesure d'afficher la valeur de la variable. De plus, vous devez affecter les champs de saisie masqués à chaque étape des différentes pages traitant du formulaire utilisateur.

0

Notez que les utilisateurs expérimentés peuvent modifier les champs cachés, assurez-vous de valider les données et être prudent avec CSRF

Vous devez utiliser session ou Flashdata http://codeigniter.com/user_guide/libraries/sessions.html

CodeIgniter soutient « flashdata », ou les données de session qui sera ne sont disponibles que pour la prochaine requête du serveur et sont ensuite effacés automatiquement. Ceux-ci peuvent être très utiles et sont généralement utilisés pour des messages d'information ou d'état (par exemple: "record 2 deleted").

Remarque: Les variables Flash sont précédées de "flash_", évitez donc ce préfixe dans vos propres noms de session.

Questions connexes