Laravel 4

Insérer un foreach dans du html

Avatar de Remcret
Remcret

Bonjour,
J'ai un probleme de syntax pour inserer un foreach dans du html.
Le context est la génération d'une facture en pdf.
J'ai essayé pas mal de chose sans succès.
Voici un extrait de code

public function getPdf($id)
{ 
 $cmd=Commande::find($id);
 $artcmd=Artcmd::where('commande_id','=','$id')->get();
    $html = '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'
     .'<style> table{
 border-width:1px; 
 border-style:solid; 
 border-color:black;
 width:50%;
 }
td { 
 border-width:1px;
 border-style:solid; 
 border-color:black;
 width:50%;
 }</style>'
            .''
     
            .'<br/><table align="center"><tr><td>Qte</td>
 <td>Article</td>
 <td>Description</td>
 <td>Prix Unitaire</td>
 <td>Tva</td>
                        <td>Total</td>
 </tr>'
 
 .foreach($artcmd as $art){

 .'<tr>'
 .'<td>'.$art->qte
 .'</td>'
 .'<td>'.$art->article->titre
 .'</td>'
 .'<td>'.$art->article->info
 .'</td>'
 .'<td>'.$art->article->prix
 .'</td>'
 .'<td>'.$art->article->tva->valeur
 .'</td>'
 .'<td>'.(($art->article->tva->valeur)/100)*$art->article->prix*$art->qte
 .'</td>'
 .'</tr>'
 }

            . '';
    return PDF::load($html, 'A4', 'portrait')->show();
}

Message d'erreur "syntax error, unexpected 'foreach' (T_FOREACH)"
Voila je pense que la solution est assez simple, mais je bloque la.

Posté il y a 4 ans
Avatar de Remcret
Remcret

C'est bon j'ai résolue mon probleme de syntax.

public function getPdf($id)
{ 
 $cmd=Commande::find($id);
 $artcmd=Artcmd::where('commande_id','=',$id)->get();
    $html = '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'
     .'<style> table{
 border-width:1px; 
 border-style:solid; 
 border-color:black;
 width:50%;
 }
td { 
 border-width:1px;
 border-style:solid; 
 border-color:black;
 width:50%;
 }</style>'
            .'' .'<br/><table align="center"><tr><td>Qte</td>
 <td>Article</td>
 <td>Description</td>
 <td>Prix Unitaire</td>
 <td>Tva</td>
 </tr>';
 
 foreach($artcmd as $art){


 $html.='<tr>'
 .'<td>'.$art->qte
 .'</td>'
 .'<td>'.$art->article->titre
 .'</td>'
 .'<td>'.$art->article->info
 .'</td>'
 .'<td>'.$art->article->prix
 .'</td>'
 .'<td>'.$art->article->tva->valeur
 .'</td>'
 .'<td>dfa'.(($art->article->tva->valeur)/100)*$art->article->prix*$art->qte
 .'</td>'
 .'</tr>';
 }

            $html.= '';
    return PDF::load($html, 'A4', 'portrait')->show();
}
Posté il y a 4 ans

Vous ne pouvez pas répondre à ce sujet.