Zabezpecenie registracie v PHP

Programovacie jazyky, rady, poradňa...
hwip
Zablokovaný
Zablokovaný
Používateľov profilový obrázok
Príspevky: 306
Registrovaný: 20 mar 2011, 12:03

Re: Zabezpecenie registracie v PHP

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

@Mmartin: vidis aky som nevsimavy :D zasluzil by som si jednu po holej :D
Slayter
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3111
Registrovaný: 28 jan 2006, 9:19
Bydlisko: Malmö, SWE

Re: Zabezpecenie registracie v PHP

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

doobre, spravil som to takto, este nejake tipy?

Kód: Vybrať všetko

<?php
$_POST['user'] = htmlspecialchars(StrToLower($_POST['user']));
$_POST['email'] = htmlspecialchars(StrToLower($_POST['email'])); 
if (!empty($_POST[username]))
{
	// zhodne hesla?
$_POST['passw1']=htmlspecialchars($_POST['passw1']);
$_POST['passw2']=htmlspecialchars($_POST['passw2']);
	if ($_POST[password] != $_POST[password2])
		exit("Vase hesla sa nezhoduju. Uistite sa ze ste zadali spravne udaje.");

	// priradi datum a cas, zabrani cachovaniu aplikacie
	$date = gmdate('D, d M Y H:i:s');
	$ip = $_SERVER[REMOTE_ADDR];

	require_once("connect.php");

	// samotna registracia, vlozit udaje do tabulky
	$query = mysql_query("INSERT INTO members 
	(username, email, password, date, ip)
	VALUES	('$_POST[username]','$_POST[email]','$_POST[password]','$date','$ip')")
	or die ("Chyba, pouzivatela sa nepodarilo zaregistrovat.");
	
	echo "Vitajte $_POST[username]! Uspesne ste sa zaregistrovali.<br /><br />
		Prihlaste sa kliknutim na nasledujuci odkaz <a href='login.php'><b>TU</b></a>.";
	exit();
}

?>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Zabezpecenie registracie v PHP

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

oh my god!

Kód: Vybrať všetko

$_POST['user'] = htmlspecialchars(StrToLower($_POST['user']));
.
.
.
if (!empty($_POST[username]))
hodnotu $_POST[username] nikde neošteruješ, a dávaš ju neošetrenú aj do db. Okrem toho, máš bordel v chápaní funkcii. Funkcia htmlspecialchars sa používa pri výpise na stránku, a nie na ukladanie do databázy. Ak ti dám apostrofy a sql injection, tak to je rovnako deravé ako bez tých funkcií. A potom je tam ešte pár chýb, ktoré sú skôr o zlých návykoch ako o zlom logickom návrhu
Napísať odpoveď