Добро пожаловать, Гость!
Функция strlen
Общие вопросы | Функция strlen
 SakamskY
  SakamskY
   
  :
 : Функция strlen
1 Мая 2014Всем привет. Столкнулся с такой проблемой. Создаю условие
<?
$post= htmlspecialchars($_POST['text']);
$post_d=strlen($post);
if (empty($post) && ($post_d<3 || $post_d>256)) $_SESSION['err'] .= 'Допустимо от 3 до 256 символов в сообщение!';
?>
Но почему то проходит любое количество символов. В чем проблема?
Комментарии: 
 saSHАDE
  saSHАDE
   
  1 Мая  2014
 1 Мая  2014
		  Vailob (1 Мая  2014):
Hatchet,а ты не сомневайс9 ни первый раз ошибаюсь
ни первый раз ошибаюсь
		  
Vailob, Эта ПЯТЬ Hatchet,а ты не сомневайс9
 ни первый раз ошибаюсь
ни первый раз ошибаюсь
 Vailob
  1 Мая  2014
  Vailob
  1 Мая  2014
		  Стритрейсер (1 Мая  2014):
Vailob, еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них
 еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них 
		  
Hatchet,а ты не сомневайс9Vailob,
 еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них
 еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них 
 ни первый раз ошибаюсь
ни первый раз ошибаюсь Стритрейсер
  Стритрейсер
   1 Мая  2014
  1 Мая  2014
		  Vailob (1 Мая  2014):
где [err] . Убери точку и пробуй.
		  
Vailob, где [err] . Убери точку и пробуй.
 еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них
 еще и услуги http://dcms-social.ru/forum/15/10/19866/ свои предоставляешь, чет я сомневаюсь в них 
 saSHАDE
  saSHАDE
   
  1 Мая  2014
 1 Мая  2014Dark_ AKC, Здесь у нас не изба-гадальня, не надо советовать то о чем даже минимального представления не имеешь.
В будущем буду наказывать за явно неверные и вредные советы.
 saSHАDE
  saSHАDE
   
  1 Мая  2014
 1 Мая  2014if (empty($post) && ($post_d<3 || $post_d>256))
Разберем по выражениям:
empty($post) - если пусто (false - если там что-то есть)
И
(.....) - проверка длины ( как можно проверить длину у пустого? Зачем?)
Вывод - выражение всегда ложно и никогда не сработает.
Решение :
if (empty($post) || $post_d<3 || $post_d>256)
Если пусто ИЛИ меньше 3 ИЛИ больше 256.

 
  
 
 
 

