Wie ich schon vermutet hatte, handelt es sich um ein sogenanntes Affenformular, d. h. das PHP für die Verarbeitung befindet sich auf der selben Seite wie das Formular selber. In dem Fall wird das PHP auch beim ersten Aufruf der Seite ausgeführt, wenn der Benutzer noch gar nichts eingegeben und auch nicht Submit betätigt hat.
Gängige Lösung: Gib dem Submit-Button einen Namen, z. B. name="submit" , dann kannst Du diesen im PHP prüfen und die Prüfung und Verarbeitung nur ausführen, wenn der entspr. POST-/GET-Parameter gesetzt ist: