echo $begrüßung;
$down = $_GET[d];
$_GET[d] (besser mit Anführeungszeichen: $_GET['d']) ist bereits dein gewünschter Wert. Du muss ihn nicht nochmal umkopieren.
header("Content-Disposition: attachment; filename=$down");
Die Datei wird auch zum Download angeboten
Wenn man die Datei jedoch runterladen möchte, werden exakt 0 Bytes heruntergeladen.
Welche Datei? Das was du hier zeigst hantiert nur mit ihrem Namen.
(unabhängig ob Sie existiert... werd' wohl noch ne Überprüfung einbauen müssen) und deren Typ richtig erkannt.
Ja, auf alle Fälle, denn so kann man alle möglichen Dateien, auf die das ausführende Script Leserechte hat, herunterladen (falls du die Dateien dann auch wirklich auslieferst).
echo "$verabschiedung $name";