darf ich vorher nachfragen, wozu du es brauchst?
Problem mit ereg()
Einklappen
X
-
na klar darfste
.
Um PHP mit MYSQL zu lernen mache ich eine Datenbank mit Kunden, jeder Kunde hat Daten und dazu gehört auch eine Telefonnummer. Nun soll der Benutzer auch einen neuen Eintrag machen können und das ganz soll über ein Formular geschehen. Um nun abzufangen, dass jemand dort etwas falsches eingibt (wie 000----------------------) , möchte ich überprüfen ob es sich um eine Telefonnummer handelt.
MfG Daether
Kommentar
-
ungetesteter Ansatz, quasi wie in einer Prüfung (preg, x-Syntax, nicht ereg):
(18:06 Uhr nur Kommentare verbessert.)PHP-Code:$preg='!^ (?:\\d+ #Anfang, einige Ziffern, Gruppe (?:
#preg-delimiter !, x-Syntax, php-string-delimiter '..'
[/-\\ ]{0,1} #kein oder ein Separator, auch Leerzeichen
)* # Gruppe null- oder mehrfach wiederholt, nicht gespeichert
\\d+ #abschliessend einige Ziffern, evtl. die einzigen Ziffern
$ #Abschluss
!x';
Zuletzt geändert von h31ss; 28.07.2006, 18:08.
Kommentar
-
Was verstehst Du unter besser? Du hast die Vorgaben gemacht, stimmte etwas nicht?Original geschrieben von Daether
momentan lebe ich mit desem Ansatz glaub ich besser:
[
Ps ich ergänze oben noch ein ^ und ein $, inklusive eventuelle Kommentare. Das fehlt.
Kommentar
-
Was macht ihr mit Kunden, die eine Mobilnetznummer haben, eine 0180- oder eine 0190-, eine variabel lange Ortskennzahl wie in Deutschland ? bzw. je nach Land in dem ihr lebt? oder die eine Hauptnummer -0 bzw. Durchwahl -1234 ?Original geschrieben von Daether
mache ich eine Datenbank mit Kunden
Bei Nummern der Form 222-444/44, 222 - 444-44, welche interne Nummern sind, wären die Kunden interne Stellen?
Zuletzt geändert von h31ss; 28.07.2006, 14:44.
Kommentar
-
und wenn ich (statt meiner echten nummer) einfach "222-22222" eintippe, ist es nicht falsch und du fängst es nicht ab? (ich habe da zwar nicht angerufen, nehme aber an, dass die mehrheit solcher "schnapsnummern" nicht vergeben sein wird). was bringt dann die überprüfung?Um nun abzufangen, dass jemand dort etwas falsches eingibt [...]
Kommentar
-
Dass der Frager etwas über regexp, über php mysql Programmierung, über Formulare und Logik, und über Telefonnummern lernt. Das ist doch immerhin schon einiges (in so kurzer Zeit).Original geschrieben von penizillin
was bringt dann die überprüfung?
Und dass ich die x-Syntax mal versucht habe.Zuletzt geändert von h31ss; 28.07.2006, 17:59.
Kommentar
-
ob ich mich in der letzten 4 vertippe und stattdessen eine 5 eingebe, wird auch nicht erkannt.damit jemand der aus Versehen die falsche Nummer eingibt es merk, es müssen ja nicht alle lügen wollen...
bedenke, für wichtige daten gibt es am ende immer eine "frewillige selbstkontrolle" - eine seite, auf der deine gesamte eingabe dir nochmal präsentiert wird und du die gelegenheit hast, die richtigkeit in deinem eigenen interesse zu kontrollieren.
Kommentar
Kommentar