Home  PHP Projekte  PHP Schulung  Informationsquellen  Geschichte  Core PHP  Fortgeschrittenes PHP  Templates  Was?  Motivation  Klassifizierung  Testvorlage  Keine Templates  HTML: Fragmente  E-Mail  PHPLib  IT[X]  Cache-Technologien  OOH Forms  Technik der Site  Büchertipps  Fotografie  Airbrush  Kontakt  Stuff 
|
E-Mail ohne Templates
Ohne eine Template-Engine ergibt sich eine enge Verbindung
zwischen dem Text der E-Mail und dem Programmcode.
Klassisch ist Concatenierung von einzelnen Strings zur
Erzeugung der E-Mail. Zu beachten ist, daß anders
als in HTML Dokumenten Leerzeichen und Zeilenumbrüche
eine zentrale Rolle bei der Formatierung der Nachricht
einnehmen.
| concatenierte Zeilen |
Top |
|
<?php
$msg = "";
$msg.= " Kiel, den " . date('d.m.Y', time()) . "\n";
$msg.= "Hallo " . $_SESSION['user']['anrede'] . " " . $_SESSION['user']['nachname'] . "\n";
$msg.= "\n";
$msg.= "vielen Dank für die Registrierung zu unserem Newsletter.\n";
// ...
mail($_SESSION['user']['email'], 'Registrierung bei www.example.com', $msg);
?>
|
Wem obiger Weg zu mühsam erscheint, der kann unter PHP 4 das
Output Buffering nutzen. Hierbei wird die Skriptausgabe zunächst
in einen Puffer umgeleitet und nicht direkt an den Client gesendet.
Der Puffer kann ausgelesen werden, ohne daß sein Inhalt ausgegeben
werden muß.
| Output Buffering |
Top |
|
<?php
ob_start();
?>
Kiel, den <?php print date('d.m.Y', time()); ?>
Hallo <?php printf('%s %s', $_SESSION['user']['anrede'], $_SESSION['user']['nachname']); ?>,
vielen Dank für die Registrierung zu unserem Newsletter.
...
<?php
$msg = ob_get_contents();
ob_end_clean();
mail($_SESSION['user']['email'], 'Registrierung bei www.example.com', $msg);
|
< ^ >
|