echo $begrüßung;
Wie muss ich den Text richtig formatieren dass er auch richtig ausgegeben wird?
Wenn ich mal zusammenfassen darf...
Du hast hier mehrere Probleme auf einmal, hausgemachte durch Nichtwissen und welche durch unbeachtete "schlechte" Eigenschaften von PHP.
Für das Backslash-Problem sind die sicher die Magic Quotes zuständig. Verstehe deren Konzept... und schalte diesen Mechanismus aus, weil er mehr Blödsinn anstellt als Nutzen bringt. Wenn du keinen Zugriff auf die Konfiguration hast, wende stripslashes_deep() aus dem Example 2 auf der Handbuchseite zu stripslashes() auf alle Eingabedaten ($_GET, $_POST, $_COOKIES) an.
Damit sind deine Eingabedaten bereinigt. Intern verarbeiten sich Daten am besten, wenn sie in ihrer Rohform vorliegen und auch noch keine störenden Ausgabeformatierungen enthalten.
Wenn Daten ausgegeben werden sollen, dann sind sie dem Ausgabemedium entsprechend zu maskieren. Für MySQL gibt es mysql_real_escape_string(), für HTML tut es htmlspecialchars().
Zeilenumbrüche werden, wenn sie richtig maskiert werden auch ohne Probleme verarbeitet. Für MySQL kümmert sich darum das bereits erwähnte mysql_real_escape_string(). Damit sie in HTML zur Geltung kommen sind sie als <br> zu schreiben (nl2br() hilft) oder der Text ist als preformatiert auszu zeichnen <pre></pre>.
echo "$verabschiedung $name";