Marco: include und mail Problem

Hallo,

habe das Problem, daß bei include so eine mysteriöse "1" am Ende des includeten erscheint. Außerdem funktioniert  include wohl nicht richtig mit mail-Funktion, oder?

//Mailen
$adminemail = "post@".$internetadresse;
$adminname = $internetadresse;
$adminbcc = "12345@gmx.de";
$email_betreff = "Ihre Nachricht vom ".$Heute;
$body = include('Temp.php');               //Datei teilweise mit PHP
$header="From:".$adminname."<".$adminemail.">\n";
$header .= "Reply-To: ".$adminemail."\n";
$header .= "Bcc: ".$adminbcc."\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: ".$REMOTE_ADDR."\n";
$header .= "Content-Type: text/html";
mail($Email,$email_betreff,$body,$header);

// Temp ausgeben
// hier funktionierts richtig:
include('Temp.php');

// hier wird der Inhalt mit einer "1" am Ende ausgegeben:
echo $body;

Und bei den erhaltenen Emails steht dann nur die 1 (in Worten: Eins) drin, sonst nix - auch nicht der Inhalt (PHP-Datei Temp.php) davor.

Woran liegtn das?

Kann ich das auch noch anders lösen?

Es soll eben zum einen die Zusammenfassung (umfangreiche Bestätigungsseite) im Browser ausgegeben werden und zum anderen eben dieser Inhalt per HTML-Mail versendet werden. Damit ich nicht extra den umfangreichen Code für Mail und Browserausgabe pflegen muß, wollte ich das in eine Temp.php-Datei bringen.

Danke fürdie Hilfe im Voraus.

  1. Hallo,

    Woran liegtn das?

    An der Art und Weise wie Du include() nutzt. Siehe auch: http://de.php.net/function.include, speziell Beispiel 11-7 wird Dir weiterhelfen.

    Kann ich das auch noch anders lösen?

    Ja, siehe Beispiel 11-7 und nutze return() für das was Temp.php ausgeben soll, dann wird es wohl funktionieren.

    Grüsse AndreD