Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: регистрационная анкета
 
 автор: franko   (27.02.2011 в 11:54)   письмо автору
 
 

Привет!

При регистрации пользователя в случае отсуствия заполненных полей выводится надпись

 exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");

Вопрос, как сделать чтобы вместо этого оставалась таже регистрационная анкета + надпись "Некоторые необходимые поля не заполнены!"

<form action="save_user.php" method="post" enctype="multipart/form-data">
 <!-- save_user.php - это адрес обработчика. То есть, после нажатия на кнопку "Зарегистрироваться", данные из полей отправятся на страничку save_user.php методом "post" -->

файл save_user.php PHP:
if (empty($login) or empty($password)or empty($code) or empty($email) or empty($gender)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт
 {
 exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!"); //останавливаем выполнение сценариев
 }

  Ответить  
 
 автор: tvv123456   (27.02.2011 в 13:44)   письмо автору
 
   для: franko   (27.02.2011 в 11:54)
 

Ну допустим что-то вроде:
<?php
$dis 
"";
if(isset(
$_POST['button']))
{
  if(!empty(
$_POST['name']) && !empty($_POST['lastName']))
    {
    
//выполняем все нужные действия(заносим в БД и прочее)
   
$dis "Информация успешно обработана";
//или просто перенаправляем на нужную страницу и завершаем работу скрипта
    
}
  else 
$dis "Вы заполнили не все поля";
}
//дальше формируем страницу
?>
.......
<?=$dis?>
<form action="#" method="post">
<input type=text name="name">
<input type=text name="lastName">

.......
<input type=submit name="button">


</form>


Можно также сделать чтобы уже введенные данные не терялись, для этого в тегах input достаточно использовать атрибут value присваивая ему значение соответствующей переменной(но тут стоит обратить внимание на магические кавычки)

  Ответить  
 
 автор: franko   (27.02.2011 в 13:53)   письмо автору
 
   для: tvv123456   (27.02.2011 в 13:44)
 

а как это сформирвать запрос не в первом файле где form а во втором файле где
if (empty($login) or empty($password)or empty($code) or empty($email) ) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт
{
exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!"); //останавливаем выполнение сценариев

  Ответить  
 
 автор: tvv123456   (27.02.2011 в 13:55)   письмо автору
 
   для: franko   (27.02.2011 в 13:53)
 

Я вообще то вам дал рабочую наработку скрипта одного из возможных вариантов подходящий для ваших целей, осталось только дописать его(но даже в таком виде работает, то о чем вы спрашивали: если не заполнено хотя бы 1 поле то выводиться сообщение об этом и выводиться сама форма)

  Ответить  
 
 автор: franko   (27.02.2011 в 14:04)   письмо автору
 
   для: tvv123456   (27.02.2011 в 13:55)
 

да просто у вас все в одном файле. а у меня их два. в одном форма, в другом проверка.
Какие изменения внести во второй файл?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования