0
votes

Ajouter plusieurs variables à une vue de Laravel

$header = DB::select("SELECT COLUMN_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'tableOne'");
$secheader = DB::select("SELECT COLUMN_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'tableTwo'");

$variables = DB::table('tableThird')->get();
$variables = json_decode(json_encode($variables, true));
$tbHeading = json_decode(json_encode($header, true)); //json object

return view('admin/crosstabdata', compact('secheader','tbHeading','variables'));
When I print all three variables to view (crosstabdata.blade.php) file, it said: 
  secheader variable does not exist.

1 commentaires

Mettez votre code de vue ici s'il vous plaît. Et je pense qu'il est préférable de changer le admin / croStabdata vers admin.crosstabdata dans la dernière ligne.


5 Réponses :


-1
votes

Je n'ai pas essayé de transmettre trois vatisbles directement, mais voici un moyen de passer deux variables xxx

J'ai vu cette question dans la pile sur la flux, je pense que cela pourrait vous aider Rendre comme une matrice et le transmettant comme une variable, voir ici

Laravel - passe plus d'une variable pour voir


2 commentaires

J'ai besoin de plusieurs variables pour passer en vue.


Serez-vous transmettre que les variables les utilisent comme une matrice et transmettez la boucle de la matrice, cependant-la et boucle chaque variable à nouveau et que vous obtenez le resault, voir le lien et vous comprendrez



0
votes

Essayez ceci; xxx

espère que cette approche aide à sortir.


4 commentaires

J'ai besoin de trois variable pour passer


De votre code, quelles variables? Je pensais que vous envoyez une sechéeur, des variables et des tbheading


Qu'est-ce que dd ($ secheader) retourner?


Variable non définie: sechéteur



0
votes

Essayez de cette façon:

return View::make('admin.crosstabdata')
           ->with(compact('secheader', 'tbHeading', 'variables'));


0 commentaires

0
votes

Votre code devrait fonctionner. Peut-être que le problème est dans la vue.

Autre alternative, vous pouvez passer des varaibles à vos points de vue comme ceci: xxx

alors dans votre vue, vous pouvez y accéder comme < Code> $ secheaver , $ variables & $ tbheading .


0 commentaires

0
votes

Vous pouvez transmettre une matrice associative au avec () , donc votre relevé de retour peut ressembler à ceci:

Vue de retour ('admin / crostabdata') -> avec ([["secheader '=> $ secheader," tbheading "=> $ Tbheading, ...]);


0 commentaires