Здравствуйте, я новичёк в мире PHP и мне нужна помощь более опытных, вот кусочек кода:
<?php
if(isset($_SESSION['nickname']) and isset($_SESSION['password'])){
}
else{
if(isset($_POST['registration'])){
if(empty($_POST['nickname']) and empty($_POST['password'])){
echo"";
}
else{
if(empty($_POST['nickname'])){
echo"";
}
elseif(empty($_POST['password'])){
echo"";
}
else{
if(!preg_match("|[0-9A-Za-z]|", $_POST['nickname']) and !preg_match("|[0-9A-Za-z]|", $_POST['password'])){
echo"";
}
else{
if(!preg_match("|[0-9A-Za-z]|", $_POST['nickname'])){
echo"";
}
elseif(!preg_match("|[0-9A-Za-z]|", $_POST['password'])){
echo"";
}
else{
}
}
}
}
}
else{
echo"";
}
}
?>
хотелось бы узнать свои ошибки, если они есть, и какие нибудь советы если можно.
1. thesuperhamster - 06 Июня, 2011 - 20:06:02 - перейти к сообщению
2. DeepVarvar - 06 Июня, 2011 - 20:25:46 - перейти к сообщению
Перелопачивать не буду, покажу принцип:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- $errors = false;
- $errors[] = "Не ввели имя";
- $errors[] = "Не ввели пароль";
- // и т.д. собираем со всех полей нужные ошибки проверок
- if (!$errors) {
- // регистрируем
- }
- }
- // та же хрень что и с регистрацией
- }
- // а тут выводим ошибки
- foreach ($errors as $error)
- echo "$error<br />";
Длинные строчки слишком (в окно кода не вдезают) - сделал переносы...