Přihlašování na stránky pomocí ASP – posíláme heslo
V předcházejícím článku o přihlašování na web stránky jsme dali uživatelům možnost změnit si své heslo. Tento pro uživatele vstřícný krok však sebou nese jeden velký problém a to sice zvýšenou možnost zapomenutí hesla a tím pádem i znepřístupnění web stránek pro uživatele do té doby, než mu správce aplikace sdělí jeho heslo. V dnešním článku se dozvíte, jak zajistit možnost zaslání hesla na email, který je uveden v databázi.
Předpokladem správné funkce je ovšem zajištění stavu, že kombinace emailové adresy a jména uvedených v databázi budou unikátní. To lze snadno zajistit při vkládání uživatelů do databáze, ale o tom až v některém z dalších dílů toho seriálu. Pro dnešní díl budeme předpokládat, že emaily a jména v databázi jsou skutečně unikátní.
Celá dnešní „přidaná hodnota“ bude opět umístěna v jediném souboru, který se bude jmenovat mailpsw.asp V souboru bude umístěn jednoduchý formulář, který se zobrazí při přístupu na mailpsw.asp bez předchozího vyplnění formuláře a skript, který na základě vyplněné email adresy a jména odešle heslo, které těmto zadaným údajům odpovídá.
|
Pokud není kombinace zadaného jména a adresy nalezena v databázi, nebo se nelze s databází spojit, je o tom uživatel informován.
Ve skriptu je použito souboru connect.asp, který zajišťuje spojení s databází a byl již několikrát popisován v předchozích článcích. Na základě vyplněné email adresy sestavíme SQL dotaz, pomocí kterého se pokusíme v databázi najít odpovídající záznam. Pokud najdeme záznam, který odpovídá zadané emailové adrese, odešleme na tuto adresu heslo. Podobněji je posílání emailu popsáno v článcích o posílání emailu pomocí ASP, které najdete v této rubrice Interval.cz.
A ještě jeden tip na závěr dnešního článku. Pokud chcete mít formulář pro poslání hesla na jiné stránce, můžete jej bez obav umístit kamkoliv. V tomto případě ale doporučuji po zpracování provést přesun zpět na stránku, ze které bylo volání provedeno.
Vše, co jsem vám dneska předvedl, si můžete stáhnout zde.