Как проверить длинну введенного в форму слова?

Старый mweb

Модератор: [mweb team]

Как проверить длинну введенного в форму слова?

Сообщение ViperMobster Чт май 29, 2008 10:40

В общем есть такая проблема. Сообщение введенное в форму пользователем записывается скриптом в таблицу. Но как быть если пользователь захочет ввести скажем 100 символов без пробелов -20- Таблица немного меняет свои свойства (в смысле становится шире). Может есть какая то функция для проверки таких длинных "слов"?
Аватара пользователя
ViperMobster
Прохожий
 
Сообщения: 36
Зарегистрирован: Вт авг 14, 2007 8:53

Сообщение ViperMobster Чт май 29, 2008 10:41

Забыл добавить ПХП функция нужна.
Аватара пользователя
ViperMobster
Прохожий
 
Сообщения: 36
Зарегистрирован: Вт авг 14, 2007 8:53

Сообщение Muerto Чт май 29, 2008 13:22

Наверно что то типа
Код: Выделить всё
for ($i=1; $i<count(explode(" ", $test)); $i++) if (count($test[i]>100) $ops=1;

где $test - переданное поле, а $ops - становится 1, если длина хоть одного слова больше ста.
Можно красивей написать, но думать больно.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение ViperMobster Пт май 30, 2008 1:53

Пасибки большое! -03-
Аватара пользователя
ViperMobster
Прохожий
 
Сообщения: 36
Зарегистрирован: Вт авг 14, 2007 8:53

Сообщение dyadya Пт май 30, 2008 9:34

(count($test[i]>100) $ops=1;


Тут, мне кажется, вместо "count" нужно использовать"strlen"
(Я тут, как раз РНР изучаю...)
Извините, если я Вас отвлекаю...
dyadya
Прохожий
 
Сообщения: 7
Зарегистрирован: Пт апр 04, 2008 13:01
Откуда: Харьков

Сообщение Muerto Пт май 30, 2008 10:46

2dyadya: Согласен, strlen быстрее и правильней. Просто я на коленке писал, вспомнить функции все напряжно было.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение ViperMobster Пт май 30, 2008 13:24

Код: Выделить всё
<?php
$text = "Это и есть та самая строка в которой длинна слова не должна быть больше 20 символов";
$text_explode = explode(" ", $text);
foreach($text_explode as $number => $value) {
$leng = strlen($value);
if ($leng > 20) {
$error = 1;
}
}
if ($error == 1) {
echo "В одном из слов больше 20 символов"; } else { echo "Меньше 20"; }
?>


Я тут долго думал и решил попробовать еще и так, вроде работает -18-
Аватара пользователя
ViperMobster
Прохожий
 
Сообщения: 36
Зарегистрирован: Вт авг 14, 2007 8:53

Сообщение kost Сб май 31, 2008 12:59

Можно при выводе таблицы резать длинные слова, а не писать предупреждения пользователю.
Аватара пользователя
kost
Заядлый `курильщик`
 
Сообщения: 701
Зарегистрирован: Ср апр 16, 2003 16:56
Откуда: Санкт-Петербург


Вернуться в Архив

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

cron