Tach!
Deine Logik solltest Du mal überdenken. D.h., es fängt damit an, den Benutzer darauf hinzuweisen was er da einzugeben hat. Und daß keine Eingabe heißt: Aktuelles Datum.
Das ist aber laut gezeigtem Code nicht das Ziel. Keine Eingabe heißt, das Datum in $p_bis zu verwenden. Das aktuelle Datum spielt in dem Anwendungsfall laut Code keine Rolle.
Dann hast Du nur noch zu prüfen, ob bei der Eingabe eines Datum das Objekt erstellt werden konnte, was soviel heißt daß das eingegebene Datum gültig ist. Auf jeden Fall würde ich das Ergebnis (was PHP daraus macht) nocheinmal dem Benutzer zeigen damit er das bestätigen kann.
Das sollte man auch tun, für den Fall, dass die Eingabe nicht leer ist. Aber das Problem bleibt bestehen, dass er Eingaben erkennen möchte, die leer oder gleichwertig zu leer sind.
Siehst Du, Dein Leerzeichenvergleich löst sich mit der richtigen Herangehensweise in Luft auf
Nö, tut es nicht, wenn du nicht den Anwendungsfall umschreibst, so dass er zum Programmierproblem passt. Üblicherweise macht man das andersherum.
dedlfix.