|
|
|
|
|
|
для: Valick
(03.03.2012 в 17:50)
| | да, конечно есть... PHP5 для чайников Джанет Валейд... + манул. Я не учу сразу 5-ть книг, так как считаю, что у каждого автора своя точка зрения, и если новичек будет учить нескольких авторов, то просто запутается, так что мне пока одной книги хватает. что касается кода, да, я его сразу проверяю. основное, что должно работать при правельных действиях у меня сверху, а что -то другое идет уже под ним... | |
|
|
|
|
|
|
|
для: Valick
(03.03.2012 в 17:59)
| | то что он грубо написан я и сам понимаю, я же говорю, что я только учусь) и просто не вижу смыла втыкать везде else, если мне вполне хватает elseif ()... этот код будет еще раз 10 переделываться, будет добавлено в ф-ию обработки данных введеных пользователем регулярные выражения, и хочу поставить еще защиту от роботов, но вот с последним у меня даже представления нет как работать... но это дело времени... мануал мне в помощь и форум наподобие этого) вопрос стоял в том, чтобы сделать вывод CSS, получилось... теперь думать буду как убрать при запросе этой страницы сразу вывод оповещения о не заполненых полях ) А на Ваш код с удовольствием посмотрю ) | |
|
|
|
|
|
|
|
для: Default
(03.03.2012 в 17:55)
| | приду домой, попробую поправить ваш код | |
|
|
|
|
|
|
|
для: Киналь
(03.03.2012 в 17:48)
| | Спасибо конечно, но я не заметил разницы))) | |
|
|
|
|
|
|
|
для: Default
(03.03.2012 в 17:42)
| | судя по коду вы их проверяете сразу после установки
нет это не критика, судя по коду вы его слепили из разных кусков что нашли на просторах интернета, хотя подозрения есть что просто откуда-то скачали, но раз вы говорите что писали сами у меня нет повода вам не верить.
у вас есть какие-нибудь книги по РНР? | |
|
|
|
|
|
|
|
для: Киналь
(03.03.2012 в 17:47)
| | Долго писал, уже всё решили=) | |
|
|
|
|
|
|
|
для: Default
(03.03.2012 в 15:48)
| | Так, ну поехали. Для начала мы от вашего кода оставим только логику и отформатируем его почётче, . Как-то так:
<?php include 'blocks/db.php';
function clearText($test){ return mysql_escape_string(htmlspecialchars(trim($test)));}
if($_SERVER['REQUEST_METHOD'] == 'POST') // если что-то пришло POST'ом
{
// заполняем переменные пользователя
if(!empty($login)&&!empty($pass)&&isset($check)&&$pass==$clear_pass) // если всё хорошо
{
//Ищем пользователя в базе
if($res == 0) // пользователя нет в базе
{
// Заносим его в базу
if($query) // если занесли успешно
{
// ставим куки с логином и паролем
// переопределяем переменные $login и $pass, беря значения из только что поставленных кук
// Смысл этого мне неясен, но пока оставим
// перенаправляем на testcookie.php и завершаем работу скрипта
?>
<!--HTML-код, который не выполнится никогда, так как стоит после команды exit()-->
<?php // продолжения кода
}
elseif(!$query) // что-то не так
{
echo 'Ошибка при добавлении данный. Попробуйте позднее.';
// однако работа скрипта продолжается, нет ни exit(), ни чего-то аналогичного
}
// нет соответствующего else; возможно, нужно чуть выше писать не elseif, а else
}
elseif($res > 0) // пользователь есть в базе
{
echo "<div id='error'>Логин занят, пожалуйста, выберите другой.</div>";
}
// опять не вижу else
}
elseif(/*одно из условий не выполнено*/)
{
// уведомляем об этом пользователя. Опять нет else.
}
}
?>
<!--всякий разный HTML-->
|
Посмотрите на код теперь. Это соответствует той логике, которую вы хотели получить? | |
|
|
|
|
|
|
|
для: Valick
(03.03.2012 в 17:40)
| | это критика? ) я передаю значения куки в массив и уже на другой странице проверяю их | |
|
|
|
|
|
|
|
для: Valick
(03.03.2012 в 17:30)
| |
mysql_escape_string(htmlspecialchars(trim($test)));
|
может я что-то и не до понимаю, молодой еще в этом, но эти ф-ции обрабатывают только то, что ввел пользователь и не как не может влиять на работу всего скрипта и в том числе на вывод данных в броузер всего, что не касается данными введенные пользователем | |
|
|
|
|