Hallo Leute, ich habe in meiner Eingabemaske ja das Problem gehabt das es wenn ich Buchstaben in ein Feld eingebe wo Zahlen rein sollen es zum MDB2 Error kommt, habe das mit is_numeric gelöst. Das ganze Funktioniert aber nun habe ich das Problem wenn ich das Feld leer lasse kommt es auch zu diesem Fehler jemand ne Ahnung wie ich das umgehen kann?
Announcement
Collapse
No announcement yet.
is_numeric
Collapse
X
-
Originally posted by Christian Marquardt View PostWie schon gesagt -> richtige Eingabevalidierung vornehmen
In deinem Falle eben nicht die Arbeit mit is_numeric, sondern prüfen
- wie lang ist die Eingabe
- welche Zeich sind drin
Und dann entsprechende Fehler ausgeben
doofe frage aber kannst du mir mal die funktionen dafür nennen?
Comment
-
Ich glaube, dass Du auch einfacher an dein Ziel kommen könntest. Wenn ich dich richtig verstehe, dann erwartest Du von dem Feld, dass es nur Ziffern erhalten darf. Wenn es leer ist, dann soll der Wert was sein...? 0?
Wenn dem so ist, dann könnte dir das (in etwa) weiterhelfen:
PHP Code:$deine_Variable = isset($_POST['formularfeld']) ? intval($_POST['formularfeld']) : 0;
Sie überprüft das vom Formular übergebene Feld und schreibt den Wert in $deine_Variable. Ist es leer, wird der Wert automatisch auf "0" festgesetzt - es dürfte also keine Fehler mehr geben.
Comment
-
Ja, aber dafür hat dir Christian schon den richtigen Ansatzpunkt gegeben:
Überprüfe mit regulären Ausdrücken, ob in dem vom Formular übergebenen Feld Werte vorkommen, die nicht numerisch sind - ist dem so: entsprechende Meldung.
Darüber hinaus kannst Du auch prüfen, ob $_POST['formularfeld'] leer ist und dazu eine entsprechende Meldung ausgeben.
Allerdings sollte dein Formular bereits so aufgebaut sein, dass User gar nicht mehr auf die Idee kommen, ungültige Werte einzugeben (weil sie nicht wissen, was Du von ihnen möchtest - mutwillige Falschausgaben musst Du natürlich dennoch abfangen können).
Comment
Comment