In der Datenbank geht die führende Null bei der PLZ verloren? Dann ist das falsch modelliert.
PLZ ist type="text", number ist falsch. Korrektes Format prüft man per pattern, wenn du einen Live-Check auf erlaubte Zeichen willst, muss wohl JavaScript heran.
Beratungsresistente Kunden sollte man, wenn man es sich leisten kann, in den Ex-Kunden Status versetzen. Denn spätestens, wenn der durch die Wand gerammte Kopf eine Beule entwickelt, oder der Rammpunkt sich als statisch kritisch erweist, will dieser Typ Kunde von seiner Resistenz nichts mehr wissen und macht dich verantwortlich. Oder fordert zumindest Abhilfe. Woraufhin du dem gebastelten und verabscheuten Konstrukt weitere Ekligkeiten hinzufügen musst. Es wird nicht besser.
Und wenn es ein Gefälligkeitsdienst für einen Bekannten ist, wird die Sache noch schlimmer, denn solche Projekte haben keinen Endetermin.