Zamädzenie opätovného nicku pri registrácií

Programovacie jazyky, rady, poradňa...
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Zamädzenie opätovného nicku pri registrácií

Príspevok od používateľa .:M4jco:. »

Zdravím

Hladal som už dlho na google, aj som skušal niečo svoje, avšak uspel som bez úspechu.

Nevie mi niekto poradiť ako zamädzím tomu že pri registrácií už nikto nepoužije nick ktorý už je zaregistrovany? Je to použité skoro všade, napríklad aj tu a fóre a podobne.

Napadlo ma že si načítam všetky nicky z databazy do nejakého pola a budem to porovnavať so vstupom, ale potom mi došlo že pri niekolkach tisckach záznamov to môže robiť problém...

Ďakujem
KoCi
Darca
Darca
Používateľov profilový obrázok
Príspevky: 5482
Registrovaný: 19 jan 2006, 1:36
Bydlisko: BA

Príspevok od používateľa KoCi »

jednoduche - das vyhladat novoregistrovany nick v databaze - ak nenajde, registraciu povoli, ak najde, tak vyzve na zmenu nicku :)
TGiJack
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 419
Registrovaný: 30 nov 2006, 19:37
Bydlisko: NO
Kontaktovať používateľa:

Príspevok od používateľa TGiJack »

nooo bol si velmi blizko :) len nič nenačitavaš do pola ;) ale porovnavaš samotný nick a ak ti DB vrati 1 tak znamena ze nick uz existuje,no neviem či je to najlepšia metoda ale zaručene funguje 8)

Kód: Vybrať všetko

$query = "SELECT * FROM profil WHERE user=$_POST['login']";
$result = mysql_query($query, $link) or die ("Chyba!");
$num = mysql_num_rows($result);
if ($num != 0){
echo "Niekto už používa rovnaký Nick!<br>";
die();
}
bart11
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 91
Registrovaný: 13 okt 2006, 20:11
Kontaktovať používateľa:

Príspevok od používateľa bart11 »

TGiJack: Ano da sa aj tak, ale...
prvy dopyt: Existuje nick? ak nie, tak
druhy dopyt: INSERT ....
To je asi moc dopytov (za predpokladu, ze by bolo mnoho uzivatelov)

Co takto vyuzit databazu
1.) Nastavit stlpec nick ako unikatny.
2.) Vlozit zaznam (bez overenia ci existuje)
3.) Skontrolovat chybovy kod (ak nejaky bol) mysql_errno()

Teda takto by som to aspon spravil ja. Ale poucte ma ak sa mylim.

//uprava
Nasiel som to:
http://php.vrana.cz/vyuziti-unikatnich- ... tabazi.php

//uprava2
doplnam, ze ten kod zacina od komentara // elegantní kód, předpokládá ...
TGiJack
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 419
Registrovaný: 30 nov 2006, 19:37
Bydlisko: NO
Kontaktovať používateľa:

Príspevok od používateľa TGiJack »

teraz ma napadlo ak by si to chcel overovat ešte pred oddoslanim registracie tak to spraviš cez ajax tu je najky priklad ako by sa to dalo spravit http://www.w3schools.com/php/php_ajax_suggest.asp no len si to treba poprerabat ale ako inspiracia je to dobre a ak aspon trochu vieš v tom chodit tak by nemal byt problem si prerobit podla svojho obrazu

//autoeditácia príspevku ( 06 Jun 2009, 19:05 )
stým unikatným ID je to celkom dobre ale inak na tej stranke je skoro ten istý kod ako som napisal ja len sa to robi už v DB cez to COUNT(*) je to ovela elegantnejšie aj asi jednoduchšie
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Príspevok od používateľa .:M4jco:. »

Použil som spôsob od barta, díky :-) je omnoho šetrnejší a elegantnejší. Myslel som si že to bude zložitejšie :D
Napísať odpoveď