| Autor | Zpráva | ||
|---|---|---|---|
| banana Profil * |
#1 · Zasláno: 26. 8. 2007, 14:32:36
potrebujem spravit registraciu po ktorej bi pol na zadani mail odoslani aktivacni mail. dakujem
|
||
| bukaj Profil |
#2 · Zasláno: 26. 8. 2007, 14:39:08
banana
Obávám se, že sis spletl kategorii ;) |
||
| banana Profil * |
#3 · Zasláno: 26. 8. 2007, 14:43:59
preco?
|
||
| splite Profil |
První se zamysli jestli to není jen otravování a jestli opravdu nutně potřebuješ v db funkční adresy. Není? Tak tady máš bleskový postup:
Uděláš si v tabulce registrace sloupec (varchar (32) ) navíc, pojmenuješ ho třeba "auth"... Při samotné registraci vytvoříš náhodný string (třeba mou funkcí) a do tohoto sloupce ho vložíš.
function getMyHashPiece(){
return substr(md5(time()+rand(0,100)), rand(0,16), rand(17,32));
}
(vrátí mezi 2 a 32 znaky) odešleš mail: mail($adresa, "registrace", "klikni sem: [url=http]http://URL/[/url]mailauth.php?auth=".$auth_hash_stejny_jako_jsi_pri_registraci_pouzil_v_tabulce); (forum mi pořád z toho dělá link... snad pobereš jak to myslím) a do mailauth.php dáš něco ve smyslu:
$zaznam = mysql_fetch_array(mysql_query("SELECT * FROM tabulka_s_registracemi WHERE auth = ".mysql_escape_string($_GET['auth'])." LIMIT 1;"));
if(!empty($zaznam['auth'])){
mysql_query("UPDATE tabulka_s_registracemi SET auth = '1' WHERE auth =".$zaznam['auth']." LIMIT 1;");
echo "Ok, teď se už přihlas.";
} else {
echo"hmm... žádná taková registrace tu není";
}
Ještě musíš obohatit tvoje přihlašovací query o pasáž: ... WHERE jmeno=$jmeno AND auth = 1 ... Ten náhodný string nemůže mít beze změny v provedené v mailauth.php jediné číslo (pokud použiješ tu mou fci - ta totiž vrátí minimálně 2 znaky) (postup je skutečně jen bleskový, aby jsi pochopil jak na to... musíš třeba ošetřit duplikaci auth (je to sice hodně nepravděpodobné, ale ne nemožné - třeba tak, že do mail linku dáš navíc ještě id nebo jméno nebo cokoliv...) Zapomeň že tu za tebe budeme něco psát komplexně - jedině že by jsi přišel přesně s problémem a dodal přesný zdrojový kód. Ptal jsi se jak na to, tak jsem ti to napsal... Na svůj systém to ale musíš už napasovat sám. s pozdravem, spl!te |
||
|
Časová prodleva: 15 dní
|
|||
| mr.shark Profil * |
#5 · Zasláno: 10. 9. 2007, 16:19:32
diki
|
||
| nothrem Profil |
#6 · Zasláno: 10. 9. 2007, 16:25:08
Ještě poznámka: sloupci 'auth' nastav UNIQUE index aby nemohlo nedocházelo ke kolizím...
|
||
|
Časová prodleva: 18 let
|
|||
0