echo $begrüßung;
$ARRAY_LAND = $_SESSION["ARRAY_LAND"];
Gibt es hier keine Notice von PHP (error_reporting auf E_ALL gestellt)?
if(!isset($ARRAY_LAND))
Was steht denn wirklich in $ARRAY_LAND drin? var_dump($ARRAY_LAND)
Deine Programmlogik ist hier nicht richtig. Zuerst greifst du auf eine Variable ($_SESSION["ARRAY_LAND"] -- in dem Fall ein Array-Element) zu, ohne zu prüfen, ob das überhaupt existiert. Und dann prüfst du auf die Existenz einer Variable ($ARRAY_LAND), der du eben etwas zugewiesen hast. Diese existiert nach der Zuweisung zwangsläufig.
Einen Strich durch die Rechnung wird dir hier die Tatsache machen, dass bei der Zuweisung einer nicht existierenden Variable $x zu einer Variable $y die Variable $y mit dem Wert NULL erzeugt wird. Dummerweise liefert isset($y) nun ein false obwohl die Existenz von $y mittels var_dump($y) nachgewiesen werden kann. var_dump gibt NULL ohne eine "Undefined variable"-Notice aus.
Bei solchen Tests bitte immer var_dump(...) statt echo ... verwenden, damit auch die Typinformationen angezeigt werden.
echo "$verabschiedung $name";