Na, das geht ja schon mal vorwärts.
if($_SERVER['REQUEST_METHOD'] == "POST") {
if(empty($Name)) {
$error = "Der Name ist ein Pflichtfeld!";
}
elseif(!filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) {
$error = "Keine Valide Email";
}
else {
echo "Hallo " . $Name .
"<br>Der Newsletter wird gesendet an:" . $email;
}
}
Bemühe Dich, den Code sauber einzurücken, lass Leerzeilen für logische Blöcke (auch nach Deinem Belieben, z.B. für zusammenhängende Aktionen), Leerzeichen vor und nach allen Arten von Klammern, sowie dem Negationssymbol !. Wenn es nicht nötig ist, doppelte Quotas (") zu verwenden, dann nimm einfache ('):
if( $_SERVER[ 'REQUEST_METHOD' ] == 'POST' ) {
if( empty( $Name ) ) {
$error = 'Der Name ist ein Pflichtfeld!';
} elseif( ! filter_var($_POST[ 'email' ], FILTER_VALIDATE_EMAIL ) ) {
$error = 'Keine Valide Email';
} else {
echo 'Hallo '
. $Name
.'<br>Der Newsletter wird gesendet an:'
. $email;
}
}
Das braucht zwar mehr Platz und ein paar Bytes, erfordert auch anfangs etwas Disziplin - hilft aber ungemein, Fehler wie den ursprünglichen zu vermeiden. Das wirst Du schnell merken.