Seite 1 von 1
keine buchstaben, am anfang 0 möglich, ich verzweifel
Verfasst: 03.06.2004 15:18
von exweised
hallo, langsam macht mich php fertig.
also, ich habe ein eingabefeld wo man eine zahl eingeben soll, nur eine zahl, keine buchstaben. dazu soll es möglich sein, dass die zahl mit 0 beginnt. tja, php ignoriert diese null und speichert sie nicht. wenn ich jetzt der variable sage, behandel die eingabe als string, sind ja auch wieder buchstaben möglich. aber bei integer ignoriert er halt die 0 am anfang.
wie kann ich das lösen?
Verfasst: 03.06.2004 15:41
von Christian_W
Es gibt eben auch keine Zahlen mit "0" an Anfang. Wozu auch?
Ich nehme an Du willst das damit es bei der Anzeige besser aussieht.
Warum formatierst Du nicht einfach die Ausgabe:
http://de3.php.net/manual/de/function.sprintf.php
http://selfforum.teamone.de/archiv/2004/2/72719/
Gruß Christian
Verfasst: 03.06.2004 16:04
von exweised
das problem bei dem sprintf ist ja, dass ich vorher doch gar nicht weis, wieviel nullen vorhanden sind bei der eingabe.
Verfasst: 03.06.2004 17:40
von PhilippK
Also wenn sowohl 012 als auch 12 zulässig sein soll - und das unterschiedliche Eingaben sind, so kannst du das nur als String handhaben. Ggf. vor dem Abspeichern den Inhalt prüfen.
Gruß, Philipp
Verfasst: 03.06.2004 17:54
von shwepsi
es gibt doch den Befehl einen String in Zahlen umzuwandeln, wenn das nicht funktioniert, kann eine Fehlermeldung ausgegeben werden
du speicherst also den String, benutzt den Befehl (bin irgendwann mal drüber gestolpert, weiss nicht mehr wie er hiess)
schlägt es fehl, gibst du eine Meldung aus, klappt es, verwirfst du das ergebnis und speicherst doch den String
fertig, das umwandeln ist also nur zur kontrolle
Verfasst: 03.06.2004 17:59
von PhilippK
@shwepsi: der Befehl heißt wohl [php:intval] - schneidet jedoch auch die führenden Nullen ab...
Ich würde mal [php:preg_match] nehmen...
Gruß, Philipp
Verfasst: 03.06.2004 18:01
von shwepsi
@PhilipK:
Shwepsi hat geschrieben:und speicherst doch den String
die Nullen bleiben also da
die Funktion wird verwendet um zu prüfen ob Buchstaben drin sind, das Ergebnis daraus verworfen
es ist also nur zur Kontrolle
Verfasst: 03.06.2004 18:30
von PhilippK
Dann meinst du wohl [php:is_numeric] - damit geht's sogar... (Teilweise wird nämlich auch z.B. '120 Eier' als gültige Zahl interpretiert)
Gruß, Philipp
Verfasst: 03.06.2004 20:36
von exweised
danke, leute. ich werde mal ein wenig rumprobieren.
