【问题标题】:how to pass data in boucle for from controller to view using dompdf in laravel如何在 laravel 中使用 dompdf 将 boucle 中的数据从控制器传递到查看
【发布时间】:2019-06-20 20:34:10
【问题描述】:

我使用 dompdf 生成一个 pdf,其中包含我从控制器传输到视图的信息,但我无法发送在 for 循环中更改的数据

那么我该如何将这些数据发送到我的 pdf 视图,我需要你的帮助 他会有解决方案还是我会使用另一个库 pdf

这是我的控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Commande;
use Illuminate\Support\Facades\Input;
use PDF;
use App\Commercial;
use DB;
use App\Client;
use Illuminate\Support\Facades\Log;


class CommandeController extends Controller
{
   //save data 
   public function store(Request $request)
   {
       //$checked=input::get('checked');
       $nbrrowsol=$request->get('nbrrowsol');
       $nbrroweau=$request->get('nbrroweau');
       $nbrrowveg=$request->get('nbrrowveg');
       $nbrrowbiof=$request->get('nbrrowbiof');
       $nbrrowmic=$request->get('nbrrowmic');
       $nbrrowrp=$request->get('nbrrowrp');
       $nbrrowautres=$request->get('nbrrowautres');

       //error_log('Some message here.');

       if ( !empty ( $nbrrowsol ) ) {
            for ($i=1; $i <=$nbrrowsol ; $i++) { 
                # code...
             $commande=new Commande();

            $commande->nom_client =$request->get('nomclient');
            $commande->organisme =$request->get('organisme');
            $commande->adresse =$request->get('adresse');
            $commande->email =$request->get('email');
            $commande->tel1 =$request->get('tel');
            $commande->tel2 =$request->get('tel2');
            $commande->fax =$request->get('fax');
            $commande->commercial =$request->get('commercial');
            $commande->date_reception =$request->get('datereception');
            $commande->date_prelevement =$request->get('dateprelev');
            $commande->saved_by =$request->get('savedby');
            $commande->code =$request->get('codesol'.$i);
            $commande->nature =$request->get('naturesol'.$i);
            $commande->reference_cli =$request->get('reference_clisol'.$i);
            $commande->profondeur =$request->get('profondeursol'.$i);
            $commande->culture =$request->get('culturesol'.$i);
            $commande->variete =$request->get('varietesol'.$i);
            $commande->gps =$request->get('gpssol'.$i);
            $commande->analyse_demande =$request->get('analysedemandesol'.$i);
            $commande->valide =$request->get('checkvalidee');

       $commande->save();
            }
        }

        $clients = DB::table('clients')->where('nom',$request->get('nomclient'))->first();
        $commercial=DB::table('commercials')->where('name',$request->get('commercial'))->first();

        $datereception=$request->get('datereception');
        $dateprelev=$request->get('dateprelev');
        $nbrrowsol=$request->get('nbrrowsol');
        $nbrroweau=$request->get('nbrroweau');
        $nbrrowveg=$request->get('nbrrowveg');
        $nbrrowbiof=$request->get('nbrrowbiof');
        $nbrrowmic=$request->get('nbrrowmic');
        $nbrrowrp=$request->get('nbrrowrp');
        $nbrrowautres=$request->get('nbrrowautres');


               $pdf=PDF::loadview('gestion_commandes.myPDF',['clients'=>$clients,'commercial'=>$commercial,'daterecep'=>$datereception,'dateprelev'=>$dateprelev,'nbrrowsol'=>$nbrrowsol,'nbrroweau'=>$nbrroweau,'nbrrowveg'=>$nbrrowveg,'nbrrowbiof'=>$nbrrowbiof,'nbrrowmic'=>$nbrrowmic,'nbrrowrp'=>$nbrrowrp,'nbrrowautres'=>$nbrrowautres])->setPaper('a4', 'landscape');


       return $pdf->stream('hdtuto.pdf');

   }

}

那么我将如何将这些数据发送到我的 pdf 视图

for ($i=1; $i <=$nbrrowsol ; $i++) { 
                # code...
             $commande=new Commande();


            $commande->code =$request->get('codesol'.$i);
            $commande->nature =$request->get('naturesol'.$i);
            $commande->reference_cli =$request->get('reference_clisol'.$i);
            $commande->profondeur =$request->get('profondeursol'.$i);
            $commande->culture =$request->get('culturesol'.$i);
            $commande->variete =$request->get('varietesol'.$i);
            $commande->gps =$request->get('gpssol'.$i);
            $commande->analyse_demande =$request->get('analysedemandesol'.$i);
            $commande->valide =$request->get('checkvalidee');






       $commande->save();
            }

【问题讨论】:

    标签: php laravel pdf dompdf


    【解决方案1】:

    你可以使用 compact() 函数:

    $pdf = PDF::loadview('gestion_commandes.myPDF', compact('comande'));

    【讨论】:

    • 它显示一个错误:尝试获取非对象的属性“代码”
    猜你喜欢
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 2015-12-27
    • 2021-04-19
    • 1970-01-01
    相关资源
    最近更新 更多