Je suis assez nouveau au codédiciteur et je me demande sur certaines meilleures pratiques de Cadedigniter. Quand devrais-je utiliser il semble que lorsque j'utilise Le message est affiché après une demande supplémentaire. p> p> rediriger () code> par rapport à
redirige () code> alors
$ ceci- > SESSION-> SET_FLASTDATA CODE> fonctionne comme si j'utilise, mais lorsque j'utilise p>
5 Réponses :
Je pense que vous avez vraiment répondu à votre propre question. P>
Utilisez Redirection () Lorsqu'un simple message Flash en haut d'une autre page est une réponse appropriée, utilisez-le $ ceci-> Load-> Vue () Lorsque vous fournissez une page complète de commentaires pour la demande entrante peut être. p>
Donc, par exemple, lorsqu'un nouvel utilisateur indique la page "Success" serait une vue chargée et peut-être quand un utilisateur modifie quelque chose dans leur compte, un message flash "changements enregistrés" ou la démarrage similaire sur la même page est suffisante. p>
Je me lance bien, ils semblent juste redondants bien que $ ceci-> Load-> View () Code> semble manquant de fonctionnalités telles que l'utilisation des messages Flash. Vous pouvez sûrement vous empêcher de toujours utiliser
redirect () code>?
Redirection est également utile pour deux autres problèmes courants: p>
C'est assez simple. Quelle URL voulez-vous que l'utilisateur soit sur? S'ils sont sur URL1 et post des données sur URL1 et que vous chargez simplement une vue différente, ils seront toujours sur URL1. Si vous redirigez vers URL2, ils iront à URL2. P>
Votre observation est correcte que chaque fois que vous créez des Ceci peut être testé avec le code: p> rien ne sera imprimé. Mais maintenant, la prochaine fois exécuter le code suivant: p> Vous trouverez la sortie requise. Le faire une fois de plus ne donnera aucune sortie. C'est comme ça qu'ils travaillent. Pour plus de détails, vérifiez la section pour la page en cours que vous n'exigeez pas la ligne de résultat est celui-ci Utiliser flashdata code> il est uniquement disponible l'heure. C'est parce que
flashdata code> est juste un type spécial de la session code> code> qui sera disponible pour votre prochaine demande et après la demande suivante, elle sera automatiquement supprimée. Vous n'êtes pas obligé de prendre soin de sa suppression.
flashdata code> simplement transmettre les données à la vue. Voici le code: p>
flashdata code> avec
redirection () code> et pour les vues que vous devriez passer variables. J'espère que cela vous aide! P> p>
Post/Redirect/Get Solution
Bien sûr
flashdata code> ne fonctionne pas sur le courant
$ ceci-> chargée-> vue (); code>, car il définit une valeur de session vue uniquement sur la page suivante. le navigateur (pas le courant actuel). Si vous souhaitez transmettre des données sur
Affichage () CODE>, passez-le à la vue
($ page, $ données) code> Appeler lui-même comme deuxième paramètre.
Je ne suis pas sûr de ce que vous essayez de faire. Vous devez probablement passer un peu plus de temps à lire les documents CI .. Cela ressemble à vos choses de mélange un peu ....
Stackoverflow.com/a/32866456/412591