Здравейте, записвам грешките в масив
Искам да попитам хубаво ли е да се записват така грешките, има ли начин за пробив и още нещо, защо като направя проверка с preg_match за непозволени символи си изпълнява скрипта
ето така бях пробвал
Съответно на кода - ако потребителското е име е по малко от 4 и няма непозволени символи да изпълнява надоло, но при мен като напиша %^%$^$% пак си продължава.
Код:
if(strlen($username) > 4)
{
if($broi >= 1)
{
$errors[] = 'weche uim atakuv';
}
}else
{
$errors[] = 'Кратко потребителско име';
}
if(strlen($password) >=4)
{
if($password != $password2)
{
$errors[] = 'Паролите не съвпадат';
}
}else
{
$errors[] = 'Кратка парола';
}
if(strlen($email) >= 6)
{
if(!strstr("$email","@") || !strstr("$email","."))
{
$errors[] = 'Невалиден email';
}
}else
{
$errors[] = 'Malyk email';
}
if(count($errors) < 1)
{
$password = md5($password);
$sql = mysql_query("INSERT INTO users (username,password,email,skype,date,ip) VALUES ('$username','$password','$email','$skype','$date','$ip')") or die (mysql_error());
echo 'Успешна регистрация';
}
foreach($errors as $error)
{
echo $error.'<br />';
}
}
Искам да попитам хубаво ли е да се записват така грешките, има ли начин за пробив и още нещо, защо като направя проверка с preg_match за непозволени символи си изпълнява скрипта
ето така бях пробвал
Код:
if(strlen($username) > 4 || !preg_match("/[#$%@]+/", $username))
{
if($broi >= 1)
{
$errors[] = 'Вече има такъв потребител';
}
}else
{
$errors[] = 'Кратко потребителско име ili simvoli';
}