0
votes

Laravel Comment transmettre des données du contrôleur à la lame

Je construis un site de Laravel. Je souhaite soumettre des données de formulaire pour exécuter une requête et les résultats à insérer dans un format de tableau. J'utilise Oracle DB et je l'ai connecté à Laravel. De plus, j'ai créé le formulaire et la requête donne les résultats corrects. Ce que je ne peux pas faire, c'est passer des résultats dans la table avec succès.

Mes fichiers sont les suivants:

1) routtes.php (ou web.php pour les nouvelles versions de Laravel): xxx

2) la Search.blade.php (qui est le formulaire avec la méthode postale) xxx

3) mon contrôleur (NewController.php) qui exécute la requête. Les résultats sont affichés corrects, mais dans un format de liste. Je veux les mettre dans un format de table. xxx

Je veux être transmis à une autre lame appelée Pinakas.blade.php qui devrait ressembler à ce qui suit. Comment puis je faire ça? xxx


1 commentaires

La base de données est ok. Cela fonctionne bien et la requête donne les résultats. Je ne sais pas comment transmettre des données du contrôleur à la lame. $ Les entrées doivent aller à Pinakas.blade et inséré dans la table.


6 Réponses :


0
votes

Vous devez parcourir vos résultats avec @Foreach : xxx


1 commentaires

Si je le fais pour que je reçois cette erreur: Propriété indéfinie: STDCLASS :: $ AM (Vue: C: \ Xampp \ htdocs \ Laravel \ Ressources \ Vues \ Pinakas.blade.php)



0
votes

Pour transmettre les données dans la lame, c'est la meilleure approche. XXX PRE>

dans la vue de la lame P>

 @if(!empty($entries))


                        @foreach($entries as $entry)

                                 <tr class="warning" >
                                    <td >{{ $entry->AM}}</td>
                                    <td >{{ $entry->ST}}</td>
                                    <td >{{ $entry->CS}}</td>
                                    <td >{{ $entry->REGYEAR}}</td>
                                    <td >{{ $entry->role_name }}</td>
                                    <td >{{ $entry->created_at }}</td>
                                    <td ></td>
                                     .............
                                </tr>

                                @endforeach

                       @endif


1 commentaires

Je l'ai fait comme vous avez suggéré ( {{$ entrée -> am}} , etc.) pour tous les champs de table, mais cela ne fonctionne pas. Je reçois une erreur de propriété non définie: stdclass :: $ am (Vue: C: \ Xampp \ htdocs \ laravel \ ressources \ vues \ Pinakas.blade.php)



2
votes

Essayez ceci

public function psaxe(Request $request) {
    $myVar=$request->get('AM');
    $entries=DB::table('SCC_ANSWER')->where('AM',$myVar)->get();
    return view('view_file_location')->with('entries' => $entries);
}


6 commentaires

Malheureusement, la variable ne passe pas à la lame.


@Konstantinos pouvez-vous essayer cela. Vue de retour ('View_file_Location', $ entrées);


Cela me donne à nouveau une variable non définie: entrées1 (vue: c: \ xampp \ htdocs \ laravel \ ressources \ vues \ pinakas.blade.php)


Nous passons $ entrées pas $ entrées1 , s'il n'est pas utile, veuillez supprimer ou passer à $ entrées .


J'ai la solution complète ci-dessous! Je l'ai corrigé.


Si ma réponse est utile, veuillez accepter et élever ma réponse, car vous avez utile pour les autres personnes.



0
votes
@foreach($entries as $entry)
<tr>
...

2 commentaires

Mais qu'est-ce qui n'a pas fonctionné alors? Pourriez-vous partager un message d'erreur? La seule raison pour laquelle cela ne fonctionnerait pas est chaque fois que les données ne sont pas formatées comme une collection ou une matrice.


Je devrais mettre à jour les pinakas.blade car il ne pouvait pas être peuplé et utiliser des missions minuscules. Je ne savais pas que c'était sensible à la casse ... . Ci-dessous, vous pouvez voir la solution dans l'ensemble. Je l'ai testé et ça marche et je l'ai dit au cas où quelqu'un a les mêmes problèmes à l'avenir. Merci beaucoup pour votre aide!



0
votes

Vue de retour ('Salutations', ['Nom' => 'Victoria']);

Lorsque vous passez des informations de cette manière, les données doivent être une matrice avec des paires de clés / valeur. À l'intérieur de votre vue, vous pouvez ensuite accéder à chaque valeur à l'aide de sa clé correspondante, telle que . Comme alternative à la transmission d'une gamme complète de données à la fonction d'aide à la vue, vous pouvez utiliser la méthode avec la méthode pour ajouter des pièces de données individuelles à la vue


0 commentaires

0
votes

Merci à tous pour vos conseils. Le problème était la majuscule que j'utilisais dans la lame! J'ajouterai ci-dessous les extraits au cas où une autre personne ait un problème pertinent dans les projets futurs:

1) routes.php (ou web.php pour les versions de Laravel plus récentes): xxx

2) recherche.blade.php xxx

3) contrôleur (newcontroller.php) xxx

4) la lame (pinakas.blade.php) xxx

5) et les pagesController.php xxx


0 commentaires