Autor | Zpráva | ||
---|---|---|---|
repporello Profil * |
#1 · Zasláno: 5. 8. 2007, 22:34:05
PRECO NEZAPISE NIC DO DATABAZY KED PRISTUPOVE UDAJE K NEJ SU V PORIADKU A ODOSLE AJ EMAIL AJ VYPISE SPRAVU O USPESNEJ REGISTRACII... NECHAPEM...
---------------------------------------------------------------------- -------------- function JeEmail ($cislo) { return ereg("^.+@.+..+$",$cislo); } function emailvdb ($email, $link) { $vysledok=mysql_query("select * from uzivatelia where email='".$email."'", $link); return (boolean) mysql_num_rows($vysledok); } function nickvdb ($nick, $link) { $vysledok=mysql_query("select * from uzivatelia where nick='".$nick."'", $link); return (boolean) mysql_num_rows($vysledok); } require_once ('config.php'); $BudemeZobrazovat=true; if (!empty($_POST)) // už sa odoslalo { /* budeme kontrolovat nasledujuce veci: 1) e-mailovou adresu 2) ci uz e-mail neexistuje 3) ci uz nick neexistuje 4) ci je nick medzi 5 az 50 znakmi 5) ci je e-mail medzi 5 az 50 znakmi */ if (!JeEmail($_POST["email"])) echo "Nie je zadaný platný e-mail"; elseif (emailvdb($_POST["email"], $link)) echo "Uvedený e-mail je už registovaný"; elseif (nickvdb ($_POST["nick"], $link)) echo "Uvedený nick je už registovaný"; elseif ((strlen ($_POST["nick"])>50) | strlen ($_POST["nick"])<5)echo "Nick musí mať 5-50 znakov"; elseif ((strlen ($_POST["heslo"])>50) | strlen ($_POST["heslo"])<5) echo "Heslo musí mať 5-50 znakov"; else { // kontrolou sme prešli $BudemeZobrazovat=false; // poďakujeme užívatelovi echo "Ďakujeme za registráciu. Na vašu adresu ".$_POST["email"]." boli zaslané informácie pre jej dokončenie."; // uložíme to do databázi $heslo = md5($_POST["heslo"]); mysql_query ("insert into uzivatelia (email, nick, heslo) values ('".$_POST["email"]."', '".$_POST["nick"]."', '".$heslo."');", $link); $lastid=mysql_insert_id(); // a zostavíme e-mail s inštrukciami, ako registráciu dokončiť $path="http://".$_SERVER["SERVER_NAME"]."/registraciadokoncena.php?id= ".$lastid."&email=".$_POST["email"]; $telo = "Dakujeme Vam za registraciu na nasom hip-hop portale Minicity. Pre dokoncenie ". "registracie kliknite na nasledujuci odkaz ". "<a href="$path">$path</a> ". "Ak ste sa na nasom portale nechceli zaregistrovat, povazujte tento e-mail za bezpredmetny. ". "Vas Minicity team."; $hlavicky="From: ".$_POST["email"]." Return-Path:".$_POST["email"]; @mail ($_POST["email"], "Registracia na portale", $telo, $hlavicky, "-f ".$_POST["email"]); } } if ($BudemeZobrazovat):?> <form method="post" action="registracia.php"> <table> <tr> <td>Nick:</td> <td><input name="nick" value="<?echo $_POST["nick"]?>"></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" ></td> </tr> <tr> <td colspan="2"><input type="Submit" name="odosli" value="Registrovať"></td> </tr> </table> </form> <?endif;?> |
||
temistokles Profil |
#2 · Zasláno: 5. 8. 2007, 22:40:24
mysql_query ("insert into uzivatelia (email, nick, heslo) values ('".$_POST["email"]."', '".$_POST["nick"]."', '".$heslo."');", $link) or die(mysql_error());
|
||
repporello Profil * |
#3 · Zasláno: 5. 8. 2007, 22:58:06
nevypisalo ziadnu chybu iba ukoncilo beh skriptu hned po vypisani spravy o uspesnej registracii ...Tu je ten skript
|
||
repporello Profil * |
#4 · Zasláno: 5. 8. 2007, 22:59:02
|
||
fikus Profil * |
#5 · Zasláno: 5. 8. 2007, 23:01:19
Neměl by si tohle: $_POST["email"] uvnitř mysql_query odescapovat: $_POST["email"]? Mimochodem by si měl ta data také předem ověřit, třeba pomocí regulárních výrazů a ne je rovnou přebírat.
A co ten středník: ...$heslo."');"... |
||
repporello Profil * |
#6 · Zasláno: 5. 8. 2007, 23:14:56
s tym strednikom nepomohlo... a co je zle na tej premennej $_POST["email"] ??
|
||
repporello Profil * |
#7 · Zasláno: 6. 8. 2007, 09:35:32
pomoooc :-) up
|
||
repporello Profil * |
#8 · Zasláno: 6. 8. 2007, 12:50:10
aaaaaa up
|
||
temistokles Profil |
#9 · Zasláno: 7. 8. 2007, 23:20:50
repporello
No mne to prešlo |
||
reppo Profil |
#10 · Zasláno: 8. 8. 2007, 10:46:11
uz som to vyriesil... ale radsej ani nejdem vravet kde bola chyba lebo by som sa musel hanbit :-)
|
||
Časová prodleva: 17 let
|
0