Mik3e
Erfahrenes Mitglied
Hi zusammen,
Ich stehe vor dem Problem, dass ich eine per POST übertragene Variable nach folgenden Kriterien prüfen muss:
1. Es muss eine Ganzzahl sein (keine Dezimalzahl)
2. Diese Zahl darf nicht negativ sein (>=0)
Ich habe die Lösung so angedacht (ist ja eigentlich ne simple Geschichte):
Doch jetzt kommt das aber:
is_numeric klappt wunderbar, schließt aber Floats nicht aus. is_float (resp. is_double) funktioniert allerdings nicht, da er die Variable $configurationSettings['CUSTOMER_FIRST_NAME_MIN_LENGTH'] (vermutlich) als String ansieht.
D.h. ich kann bei der oberen Lösung den Wert 2.345 ohne Probleme eingeben.
Habt Ihr eine Idee, wie ich die Sache lösen kann? Ich verwende übrigens PHP 5.1.2...
Danke & Ciao,
Mike
Ich stehe vor dem Problem, dass ich eine per POST übertragene Variable nach folgenden Kriterien prüfen muss:
1. Es muss eine Ganzzahl sein (keine Dezimalzahl)
2. Diese Zahl darf nicht negativ sein (>=0)
Ich habe die Lösung so angedacht (ist ja eigentlich ne simple Geschichte):
PHP:
if (!is_numeric($configurationSettings['CUSTOMER_FIRST_NAME_MIN_LENGTH']) || is_float($configurationSettings['CUSTOMER_FIRST_NAME_MIN_LENGTH']) || $configurationSettings['CUSTOMER_FIRST_NAME_MIN_LENGTH']<0) {
$this->error->addErrorMessage("Sie haben einen ungültigen Wert für Mindestlänge des Kunden-Vornamens gewählt!");
return false;
}
Doch jetzt kommt das aber:
is_numeric klappt wunderbar, schließt aber Floats nicht aus. is_float (resp. is_double) funktioniert allerdings nicht, da er die Variable $configurationSettings['CUSTOMER_FIRST_NAME_MIN_LENGTH'] (vermutlich) als String ansieht.
D.h. ich kann bei der oberen Lösung den Wert 2.345 ohne Probleme eingeben.
Habt Ihr eine Idee, wie ich die Sache lösen kann? Ich verwende übrigens PHP 5.1.2...
Danke & Ciao,
Mike