Der Martin: Inhalt von While Schleife in Email ausgeben

Beitrag lesen

Hallo,

Also musst du in jedem Schleifendurchlauf den neuen Teilstring an den bereits bestehenden _anhängen_ (der Fachbegriff wäre Stringverkettung). Du weist dagegen einfach nur zu und überschreibst so in jedem Durchlauf die Meldung aus dem vorherigen Durchlauf.
Ok, da verstehe ich leider gerade nur Bahnhof. Kannst du mir hier weiterhelfen bitte?

okay, versuchen wir mal, den Bahnhof genauer anzuschauen.

$message = $row["f_name"] . ' '.$row["l_name"].' hat seit dem '.date('d.m.Y', strtotime($row["date"])).' keinen Besuchsbericht mehr abgegeben';

Das ist aus deinem ursprünglichen Posting. Hier baust du aus mehreren Teilen einen String zusammen (und da schau her, hier wendest du die Stringverkettung sogar schon an), und weist den so erhaltenen String an $message zu. Was vorher eventuell schon in $message stand, wird dabei überschrieben, ist weg.
Um den bisherigen Inhalt zu erhalten, müsstest du den eigentlich nur als ersten "Baustein" wieder mit einbauen, quasi nach dem Prinzip:

$m = $m . $rest;

Dafür gibt es sogar eine bequeme Kurzschreibweise:

$m .= $rest;

Wichtig ist dann, dass man $m _vor_ der Schleife einmal mit einem leeren String vorbelegt, weil sonst der lesende Zugriff im ersten Schleifendurchlauf eine Notice wegen der noch nicht existierenden Variablen schmeißt.

Oh, und irgendwann wirst du dann feststellen, dass es ganz nett wäre, jede Zeile (jede Message) mit einem Zeilenumbruch abzuschließen. :-)

So long,
 Martin

--
Wer barfuß geht, dem kann man nicht die Schuld in die Schuhe schieben.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(