|
|
 |

|

 |

| Community » PHP: Allgemeines Forum |
|
Habe ein Problem das gelöst werden sollte :D
|
Seitenanfang |
Oke, Ich grüsse erst mal alle und bedanke mich schon zum voraus für die Anworten. Also, ich bin ein Loginscript am erarbeiten und soweit funktioniert alles gut --> http://www.sb-wgc.ch/shop/index.php?main=register.php Ich kann die Daten in die DB eintragen und mit Java Script habe ich so gemacht, dass die Felder zuerst überprüft werden. Jetzt mein Problem. Ich möchte, dass wenn der Username bereits vorhanden ist, dass man diesen dann ändern muss bevor dass es einen Eintrag gibt. In PHP habe ich dieses gefunden und funktioniert auch wunderbar:$query = "Select count(username) as num from user where username='$username'"; $result = mysql_query($query); $num = mysql_result($result, "num"); if ($num) { echo "User bereits vorhanden"; } aber das zeigt es mir leider erst an, wenn die Datei eingetragen wurde und ich möchte wie beim überprüfen der anderen Felder, dass ein Fenster aufgeht... Ich habe so viel schon probiert. So sieht der JS für eine "normale" abfrage aus... if (!check_email(document.form.email.value)) { validity = false; alert('eMail ist ungültig!\nBitte geben sie eine gültige eMailadresse ein'); } jetzt habe ich mir überlegt, dass es doch irgendwie so gehen sollte, dass es dann $nume "anzeigt": if (document.form.username.value == document.$num) { validity = false; alert('Username existiert bereits'); } Bin ich total falsch oder wie sollte ich das ganze Angehen? Besten Dank Thomas Moser
Datum: 01.09.2005-20:50

|
re: Habe ein Problem das gelöst werden sollte :D
|
Seitenanfang |
| Hi, JavaScript ist Client-side, es kann also nur überprüft werden, was beim originalen Aufruf schon mitgegeben wurde. Also wäre Deine einzige Möglichkeit (die aber keine gute ist!!!), alle vergebenen Usernames beim originalen Aufruf schon mitzuschicken. Das ist aber eine ganz schlechte Idee, weil dann im Source Code der Datei alle bereits gültigen Usernames stehen, was Crackern Tür und Tor öffnet. Ich befürchte, Dir wird nichts übrigbleiben, als die Ergebnisse abzuschicken, sie server-side zu überprüfen und - falls nötig - einen anderen Username nachzufordern (du kannst/solltest die anderen bereits eingetragenen Felder als Default mit den alten Werten vorbelegen) Gruss, svenXY
Datum: 19.09.2005-10:12

|
re: Habe ein Problem das gelöst werden sollte :D
|
Seitenanfang |
| Ich kann diese Methode auch nicht empfehlen. Nicht nur würde das Dateivolumen enorm hoch sein, sondern würdest du es Hackern wohl sehr einfach machen. Du musst also eine Seite bauen mit dem Formular und das Formular ruft dann wieder dieselbe Seite auf, kontrolliert ob es den Usernamen schon gibt und danach weiterschickt. Wenn dir das zuviel Arbeit ist, könnte ich dir eine alternative Methode mit JavaScript erstellen. Dabei wird der Check via ein unsichtbares Frame stattfinden. Melde dich!!! patrick_faes@hotmail.com Dreamer, www.IT-Academy.cc
Datum: 19.09.2005-11:23

|
re: Habe ein Problem das gelöst werden sollte :D
|
Seitenanfang |
Besten Dank erstmals für eure Antworten. Wie meinst du dass genu mit dem deiner alternativ Methode?
Datum: 19.09.2005-16:49

|
re: Habe ein Problem das gelöst werden sollte :D
|
Seitenanfang |
| Das Problem liegt darin dass du einen Test am Server senden musst, und das Formular erst nachher validieren. Dann musst du aber ein Formular erstellen das vom Coden her etwas komplizierter ist. Deshalb könnte ich dir ein Script erstellen das den Usernamen checkt über ein verstecktes Frame (worin dann der Username gecheckt wird). Ich glaube ich habe dazu mal einen Artikel geschrieben für www.IT-Academy.cc . Unter der Kategorie "Programmieren/JavaScript" solltest du es finden. Wenn nicht, bitte dort ins Forum. ;)
Datum: 19.09.2005-17:20

|
|

|

|

|
 |

|

|
|