php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.08.2004, 21:33  
Gast
 
Beiträge: n/a
Standard [Erledigt] Abfrage ob Eintrag schon in DBbevor Eintrag gespeichert wird

Hi Leute,

hab mal folgende/s Problem/Frage:

Ich habe ein Formular in dem verschiedene Dinge über Kunden eingetragen werden. Diese HP dient zur Kontrolle ob der Anbieter auch alle Provi richtig ausgezahlt hat.

Jetzt ist folgendes: Wenn man einen neuen Eintrag macht, dann möchte ich, dass zuerst überprüft werden soll ob es bereits einen Eintrag mit der Rufnummer gibt. Und ausserdem soll überprüft werden, ob die Rufnummer richtig sein kann also eine bestimmte Anzahl von Ziffern hat.

Kann man diese beiden Dinge in einer Anweisung überprüfen lassen ?

Wenn ja wie ?
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.08.2004, 21:46  
Gast
 
Beiträge: n/a
Standard

äh ja klar und zwar würde ich mit der überprüfung der syntax der rufnummer anfangen wenn diese falsch ist dann brauchst du die datenbank ja nicht abfragen. rufnummer ist allerdings etwas kritisch weil der user (der ja könig ist) diese eingeben kann wie er will

also in der form von

+ 49 7231 999 8888
07231 999 8888
999 8888

und so weiter ... aber nehmen wir mal an das er sie immer gleich angeben muss "9998888" dann machst du erst einen check wie z.b.

if (isnumeric($nr)&&strlen($nr)>6){

wenn die syntax der nr stimmt dann sind wir ja hier in diesem bereich wo du dann einfach ein

select irgendwas FROM kunden WHERE rufnummer='9998888'

die funktion mysql_num_rows() gibt dir zurück ob es einen datensatz mit dieser rufnummer bereits gibt

true -> $err = 1
false -> alles cool .. doSome();

} else {
$err = 1;
}

dann bevor es ans "doSome()" geht checkst du einfach ob deine $err = 1 ist wenn ja hast nen fehler und machst "doSome()" nicht wenn nicht dann führst du doSome() aus und legst den Benutzer an oder führst halt die Funktion aus die ausgeführt werden soll.

Grüsse

update mysql_num_rows liefer natürlich nicht true oder false ... vielmehr werden die anzahl der datensätze zurückgeliefert es heisst also
if (mysql_num_rows($res) > 0) $err=1;
  Mit Zitat antworten
Alt 06.08.2004, 21:50  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Gerks
also in der form von

+ 49 7231 999 8888
07231 999 8888
999 8888

und so weiter ... aber nehmen wir mal an das er sie immer gleich angeben muss "9998888" dann machst du erst einen check wie z.b.
Es sind nur 3 oder 4 Leute die die Nummern eintragen und die wissen auch in welchem Format die sein müssen.

Allerdings wollte ich eigentlich auch die Länge überprüfen, ob es denn rein theoretisch eine Rufnummer sein kann, denn es geht um Handynummern, alos 12 oder 13 Ziffern (491XXXXXXXXX(X)).
  Mit Zitat antworten
Alt 06.08.2004, 21:52  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Gerks

if (isnumeric($nr)&&strlen($nr)>6){
ich glaube das is schon die Antwort auf meine Frage nach der Anzahl der Ziffern oder ?
  Mit Zitat antworten
Alt 06.08.2004, 21:55  
Gast
 
Beiträge: n/a
Standard

ah okay den 4 leuten kannst ja sagen das sie nur zahlen eintragen sollen z.b.

0171 1234567

dann machst zunächst mal ein trim() auf den string damit die leerzeichen alle weg sind und mit isnumeric() kannst du schauen ob das was die eingegeben haben auch eine zahl ist oder evtl sonderzeichen beinhaltet -> $err=1 mit der meldung "keine sonderzeichen eingeben jungs" desweiteren mit strlen() schauen ob die länge halt 12 oder 13 entspricht fertig.

daraus ergibt sich eine lustige if anweisung ...
etwa so

$nr = trim($_POST[rufnummer]);

if ( isnumeric($nr) && (strlen($nr) > 11 || strlen($nr) < 13) )
// alles cool
else
$err=1;

grüsse
göks
  Mit Zitat antworten
Alt 06.08.2004, 22:00  
Gast
 
Beiträge: n/a
Standard

das
Zitat:
Zitat von Gerks
if ( isnumeric($nr) && (strlen($nr) > 11 || strlen($nr) < 13) )
müsste doch eigentlich

if ( isnumeric($nr) && (strlen($nr) > 11 || strlen($nr) < 14) )

heißen oder ?

denn größer als 11 ist 12 und 13
aber gleichzeitig kleiner als 13 ergibt nur noch 12 und ich will ja 12 und 13 als Möglichkeit haben. :wink:
  Mit Zitat antworten
Alt 06.08.2004, 22:10  
Gast
 
Beiträge: n/a
Standard

bekommstn lob hast mitgedacht *g* stimmt natürlich
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Abfrage von einer Abfrage Datenbanken 5 27.01.2011 23:31
Sortierreihenfolge nach Eintrag oder letzter Änderung leuktra Datenbanken 7 29.01.2007 19:20
Abfrage, ob Eintrag schon vorhanden. GELight Datenbanken 7 28.03.2006 23:21
DB Abfrage erst ab gewissen Eintrag PHP Tipps 2006 9 18.02.2006 14:06
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Eintrag wird nicht eingetragen (Kontrollfunktion lügt?) PHP Tipps 2005-2 0 02.10.2005 12:00
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
matchscript abfrage Fraylman Datenbanken 7 26.08.2005 11:11
datenbank abfrage findet eintrag nicht PHP Tipps 2005-2 3 11.08.2005 19:52
[Erledigt] IF() abfrage in variable packen PHP Tipps 2005 14 01.04.2005 17:23
Abfrage von Char-Feldern Datenbanken 9 04.02.2005 14:06
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22
Datenbank Abfrage mit Unterseiten pro Eintrag PHP Tipps 2004 6 14.10.2004 16:05
Abfrage gestalten Datenbanken 3 13.08.2004 13:33
Abfrage aus DB noch mal ausgeben und Abfrage aus mehrern Tab PHP Tipps 2004 4 12.07.2004 15:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
datenbank abfrage ob true oder false eingetragen, datenbank abfrage true false, php abfrage ob datensatz gespeichert, php abfrage isnumeric, php abfrage prüfen ob schon eingetragen ist, php prüfen ob gespeichert, php datenbankabfrage mehrere nummern, php if ( isnumeric, php fi es schon einen datenbank eintrag gibt, eintrag schon in datenbank, handynummer 13 ziffern, abfrage ob datensatz bereits vorhanden, php schauen ob name bereits gespeichert, php abfrage ob eintrag gleich, mysql abfrage ob es einen eintrag schon gibt

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:46 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.