<?
function JeEmail ($cislo)
{
return ereg("^.+@.+\..+$",$cislo);
}
function emailvdb ($email, $link)
{
$vysledek=mysql_query("select * from uzivatele where email='".$email."'", $link);
return (boolean) mysql_num_rows($vysledek);
}
function prezdivkavdb ($prezdivka, $link)
{
$vysledek=mysql_query("select * from uzivatele where prezdivka='".$prezdivka."'", $link);
return (boolean) mysql_num_rows($vysledek);
}
// tělo skriptu - nejprve si vytvoříme odkaz na databázi
$link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
mysql_select_db(SQL_DBNAME);
mysql_query("SET NAMES 'utf8'");
$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
/*
budeme kontrolovat následující věci:
1) e-mailovou adresu
2) zda tam již e-mail není
3) zda tam již přezdívka není
4) zda je přezdívka mezi 3 a 50 znaky délky
5) zda je heslo 3 až 50 znaků dlouhé
*/
if (!JeEmail($_POST["email"])) echo "Není zadán platný e-mail";
elseif (emailvdb($_POST["email"], $link)) echo "Uvedený e-mail je již registrován";
elseif (prezdivkavdb ($_POST["prezdivka"], $link)) echo "Uvedená přezdívka je již registrována";
elseif ((strlen ($_POST["prezdivka"])>50) | strlen ($_POST["prezdivka"])<3)echo "Přezdívka musí mít 3-50 znaků";
elseif ((strlen ($_POST["heslo"])>50) | strlen ($_POST["heslo"])<3) echo "Heslo musí mít 3-50 znaků";
else
{
// kontolou jsme prošli
$BudemeZobrazovat=false;
// poděkujeme uživateli
echo "Děkujeme za registraci. Na vaši adresu ".$_POST["email"]." byly zaslány informace pro její dokončení.";
// uložíme to do databáze
mysql_query ("insert into uzivatele (email, prezdivka, heslo) values ('".$_POST["email"]."', '".$_POST["prezdivka"]."', '".$_POST["heslo"]."');", $link);
$lastid=mysql_insert_id();
// a sestavíme e-mail s instrukcemi, jak registraci dokončí
$path="http://".$_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["SCRIPT_NAME"]."?clanek=registracedokoncena&id=".$lastid."&email=".$_POST["email"];
$telo = "Dekujeme Vam za registraci na nasem portale [nazev hudebniho portalu]. Pro dokonceni ".
"registrace klepnete na nasledujici odkaz\n".
"<a href=\"$path\">$path</a>\n".
"Pokud jste se na nasem portale nechteli zaregistrovat, povazujte tento e-mail za bezpredmetny.\n".
"Vas [nazev hudebniho portalu] team.";
$hlavicky="From: ".$_POST["email"]."\nReturn-Path:".$_POST["email"];
@mail ($_POST["email"], "Registrace na portalu", $telo, $hlavicky, "-f ".$_POST["email"]);
}
}
if ($BudemeZobrazovat):?>
<form method="post" action="index.php?clanek=registrace">
<table>
<tr>
<td>Přezdívka:</td>
<td><input name="prezdivka" value="<?echo $_POST["prezdivka"]?>"></td>
</tr>
<tr>
<td>E-mail:</td>
<td><input name="email" value="<?echo $_POST["email"]?>"></td>
</tr>
<tr>
<td>Heslo:</td>
<td><input name="heslo" type = "password" value="<?echo $_POST["heslo"]?>"></td>
</tr>
<tr>
<td colspan="2"><input type="Submit" name="odesli" value="Zaregistrovat"></td>
</tr>
</table>
</form>
<?endif;?>