Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: запрет на отправку пустого поля
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » запрет на отправку пустого поля

Страниц (1): [1]
 

1. Jampire - 29 Марта, 2011 - 11:10:02 - перейти к сообщению
Как поставить запрет на отправку поля пустым?
Если хоть 1 input пуст - не добавлять в базу нужно.
2. EuGen - 29 Марта, 2011 - 11:42:12 - перейти к сообщению
Если удовлетворяет что угодно, лишь бы не null, то:

Если надо, чтобы всякие пустые значения не проходили, то
PHP:
скопировать код в буфер обмена
  1.  
  2. if(!empty($field))
  3. {
  4.    //add to DB
  5. }
  6.  
3. Jampire - 29 Марта, 2011 - 14:54:28 - перейти к сообщению
//add to DB

это форма добавления? если да, то она не выводится если находится внутри.
4. NeVariant - 29 Марта, 2011 - 15:03:27 - перейти к сообщению
Jampire пишет:
//add to DB

это форма добавления? если да, то она не выводится если находится внутри.


это комментарий)
5. Jampire - 29 Марта, 2011 - 15:06:35 - перейти к сообщению
NeVariant, спасибо кэп, без тебя не понял))
Я говорю в смысле вместо подсказки - форма.
6. EuGen - 29 Марта, 2011 - 15:22:36 - перейти к сообщению
Как я понял, вопрос стоял об обработке поля, потому в комментарии предполагалась обработка готовых данных (пришедших из запроса пользователя), а не отрисовка формы
7. Jampire - 29 Марта, 2011 - 19:12:22 - перейти к сообщению
Вот блин. Так и не понялНедовольство, огорчение
PHP:
скопировать код в буфер обмена
  1. if(!empty($field))
  2. {
  3. //сюды брать только $_POSTы ?
  4. }
8. Crusher - 30 Марта, 2011 - 13:02:51 - перейти к сообщению
сначала идёт что-то типа
CODE (htmlphp):
скопировать код в буфер обмена
  1. $login=$_POST['login'];
  2. if(!empty($login))
  3. {
  4.   //логин введён, можно добавлять его в БД
  5. }
  6. else
  7. {
  8.   //в поле логин пусто
  9. }


Цитата:
Если хоть 1 input пуст - не добавлять в базу нужно.

отсюда по теме:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $a=$_POST['a'];
  2. $b=$_POST['b'];
  3. $c=$_POST['c'];
  4. ...
  5. $z=$_POST['z'];
  6. if(!empty($a) and !empty($b) and !empty($c) and ... and !empty($z))
  7. {
  8.   //все поля были заполнены, можно добавлять в БД
  9. }
  10. else
  11. {
  12.   //одно из полей было незаполнено
  13. }


как-то так. один из вариантов.
9. Jampire - 30 Марта, 2011 - 15:47:10 - перейти к сообщению
Crusher, Спасибо. Получилось. Лови +
10. SAD - 30 Марта, 2011 - 17:08:39 - перейти к сообщению
жесть, а если 30 или 40 полей??
PHP:
скопировать код в буфер обмена
  1. $cnt = 0;
  2. foreach($_POST as $val)
  3.     if (empty($val))
  4.         $cnt++;
  5. if ($cnt == sizeof($_POST))
  6.    echo 'Не все поля заполнены';
11. Jampire - 30 Марта, 2011 - 17:13:16 - перейти к сообщению
SAD, полей 6) пойдет)
12. SAD - 30 Марта, 2011 - 18:06:02 - перейти к сообщению
Ну это сейчас
13. Ryanami - 02 Апреля, 2011 - 03:16:29 - перейти к сообщению
SAD пишет:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $cnt = 0;
  2. foreach($_POST as $val)
  3.     if (empty($val))
  4.         $cnt++;
  5. if ($cnt == sizeof($_POST))
  6.    echo 'Не все поля заполнены';

Как это применить к этому.
PHP:
скопировать код в буфер обмена
  1.     $name = $gbook->clearData($_POST['name']);
  2.     $email = $gbook->clearData($_POST['email']);
  3.     $msg = $gbook->clearData($_POST['msg']);
  4.      
  5.     if(!empty($name) and !empty($email) and !empty($msg)){
  6.         $gbook->savePost($name,$email,$msg);
  7.         header("Location: gbook.php");        
  8.     }else{
  9.         $errMsg = "Заполните все поля";
  10.     }

 

Powered by ExBB FM 1.0 RC1