PHP in HTML-Mail

Lichtpilger

Erfahrenes Mitglied
Hallo zusammen,
ich bastel mir gerade eine HTMLmail zusammen die und möchte eine unbestimmte Anzahl Einträge in einer bestimmten Form mit-ausgeben.
Also eine Schleife mit HTML-Inhalt/PHP-Inhalt, wie ich das auf einer normalen Webseite auch mache, dacht ich mir :D

Leider gibt dieser Teil überhaupt garkeine Ausgabe:

PHP:
<table border="1">
<?
$z=1;
$w=0;
for($x=0;$x<=($count_geraete-2)/2;$x++)
{
 ?>
 <tr>
  <td width="50" align="center" valign="top">
   <?echo($explode_geraete[$z]);?>
  </td>
  <td>
   <font size="-1">
    <b>
   <?
    for($i=0;$i<=$counterB-1;$i++)
    {
     if($explode_geraete[$w] == $fieldB[$i][0])
     {
      echo $fieldB[$i][3];
     }
    }
   ?>
    </b>
   </font>
  </td>
  <td width="180">
   <font size="-1">
    <b>
   <?
    for($i=0;$i<=$counterB-1;$i++)
    {
     if($explode_geraete[$w] == $fieldB[$i][0])
     {
      echo $fieldB[$i][1];
     }
    }
   ?>
    </b>
   </font>
  </td>
  <td width="160">
   <font size="-1">
    <b>
   <?
    for($i=0;$i<=$counterB-1;$i++)
    {
     if($explode_geraete[$w] == $fieldB[$i][0])
     {
      echo $fieldB[$i][2];
      $geraeteid = $fieldB[$i][0];
      $zuordnung = $fieldB[$i][18];
     }
    }
   ?>
    </b>
   </font>
  </td>
 </tr>
<?
 $z = $z+2;
 $w = $w+2;
}
?>
</table>

Dies ist ein Teil in der Varialben $Inhalt die in mail() miteinbezogen wird.

Kann da jemand einen Fehler erkennen? Ich vermute ja das es an dem öffnen und schliessen des <?PHP liegt. Wüsste aber nicht wie das ansonsten gehen soll da eine Einteilung mit 'Hallo'.$hallo.'Hallo' auch nicht funktioniert!

Bin Dankbar für jeden Tip!

Grüße alle,
Lichtpilger
 
PHP-Tags schreibe ich immer so:
PHP:
<?php

Ob der Fehler dort liegt kann ich nicht sagen. Möglich wäre auch, dass etwa deine for-Schleife nicht ausgeführt wird.
 
Also in dem Teil kann ich keinen Fehler erkennen.
Ein Tip:
PHP:
<?echo $var;?>
kann man auch so schreiben:
PHP:
<?=$var;?>

und if abfragen oder schleifen wie foreach while oder auch switch kann man auch verkürzt schreiben:
PHP:
if():
else:
endif;

foreach():
endforeach;

.....

Dein Fehler liegt vermutlich beim script vorher schon. Poste es doch mal im ganzen
 
Keine Ausgabe kann nicht sein. <table> ist zum beispiel ohne Bedingung, poste mal das HTML das der Browser anzeigt komplett. Und den Teil, indem $count_geraete gefüllt wird.
 
Hallo,
Firefox zeigt mir seltsamerweise im Seitenquelltext den PHP Code an, und zwar in Rosa, keine Ahnung was Rosa-geschrieben aussagen soll.

$count_geraete:

PHP:
if($_SESSION['geraete'])
{
 $explode_geraete = explode(°°,$_SESSION['geraete']);
 $count_geraete = count($explode_geraete);
}


Das ist das HTML im Quelltext wenn ich markiere und anzeigen lasse:

HTML:
<table border="1">

 <tbody><tr>
  <td align="center" valign="top" width="50">
   
   
  </td>
  <td>
   <font size="-1">
    <b>

   
    </b>
   </font>
  </td>
  <td width="180">
   <font size="-1">
    <b>
   
    </b>
   </font>
  </td>

  <td width="160">
   <font size="-1">
    <b>
   
    </b>
   </font>
  </td>
 </tr>

</tbody></table>



Grüße,
Lichtpilger
 
Hallo,
das eigentliche Problem scheint zu sein, das ich eine Variable, mit einem Inhalt der aus einer Schleife kommt, füllen möchte.
So ungefähr:

PHP:
$Nachricht = for($x=0;$x<=($count_geraete-2)/2;$x++)
                   {
                    echo("hallo");
                   }


Gibts da ne gescheite Lösung für? :D

Bei mir ist inzwischen alles stehen geblieben im Kopf :)
...komme einfach nicht mehr weiter an dieser Stelle.
 
Zurück