J'essaie de passer une variable d'une vue à un contrôleur à une autre vue. Je ne reçois aucune erreur, mais quand il arrive à la dernière vue, cela ne montre pas la variable comme celle-ci est supposée. Dans la première vue, je reçois juste un nom. voici mon homécontroller.php. p> routes.php p> {{ $name = Input::get('name') }}
<p> Hello, {{ $name }} </p>
5 Réponses :
Vous devez nommer la variable:
public function view2($name) { return View::make('view2')->with('name', $name); }
J'ai essayé ça, et ça n'a toujours pas fonctionné. Avez-vous d'autres idées sur ce qui pourrait être faux avec ce que je fais? J'ai essayé de comprendre cela pendant un moment maintenant et je ne peux tout simplement pas le faire travailler.
TRY-FORM sera si vous utilisez la méthode postale Pourquoi définir la variable dans la route Il ira directement sur votre fonction avec les données postales.
<p> Hello, {{ $name }} </p>
Je l'ai fait et cela m'a donné l'erreur - "Index non défini: nom". Comment devrais-je résoudre ce problème?
Cochez Imprimer_R ($ données); Vous avez un nom existant dans vos données de poste? Vérifiez également le formulaire mis à jour
Voici quelles sont les autres réponses manquantes, directement de Documents Laravel : P>
Étant donné que la méthode
avec forte> clignote des données à la session, vous pouvez récupérer les données à l'aide de la session typique Session :: Obtenir la méthode P> p> blockQuote> donc au lieu de
{{$ nom}}}} code> écrire
{{session :: get ('nom')}} code>. p>.
Vous devez d'abord changer votre fonction code> postview code> dans: et votre itinéraire: p> : p> MAINTENANT, vous devez modifier votre fonction View2 code> dans: p>
<p> Hello, {{ $name }} </p>
Cela a du sens maintenant. Mais j'ai toujours un problème. Maintenant, quand il devient voir2, cela dit simplement "Bonjour, {nom}" au lieu de montrer le nom.
@ PORCUPINE92 Et quelle url est-ce que vous mettez dans le navigateur pour cela? Vous devez utiliser par exemple http: // localhost / YourProject / View2 / Porcupine92 Code>
Lorsque je saisis un nom un nom dans le champ de texte pour le formulaire, puis cliquez sur le bouton Soumettre, il va à la vue2 et explique simplement "Bonjour, {nom}". L'URL vient de dire http: // localhost / myProject / View2 /% 7BName% 7D code>. Si je tapez
http: // localhost / YourProject / View2 / PORCUPINE92 CODE> Pour l'URL, cela dit simplement "Bonjour", sans nom.
@ porcupine92 J'ai édité ma réponse, les données sont maintenant injectées en tant que paramètre de route
Je reçois une "NotfoundhttpException" maintenant. Cela pourrait-il être à cause d'un problème avec mes itinéraires?
@ PORCUPINE92 et quelle URL utilisez-vous maintenant lorsque vous obtenez cette exception? Vous devriez être précis et assurez-vous que le code est exactement le même que celui que j'ai montré.
Mon code ressemble exactement à la vôtre. Lorsque j'utilise l'URL http: // localhost / myProject / vue2 / porcupine92 code>, il dit "bonjour, porcupine92". Mais pourquoi ne fera-t-il pas que lorsque j'utilise le bouton d'envoi? Merci beaucoup pour votre aide jusqu'à présent!
Merci beaucoup! Ça a marché. Espérons qu'un jour, je serai aussi bon que vous avec PHP.
class HomeController extends Controller { /** * Create a new controller instance. * * @return void */ public function __construct() { } public function index() { $data = array ( 'title'=>'My App yo', 'Description'=>'This is New Application', 'author'=>'foo' ); return view('home')->with($data);; } }
Voir la page PHP Echo $ Titre; ?>
Bonne réponse. C'est l'une des solutions les plus propres.