Проблема в следующем: Я делаю сайт на котором есть форма данные с которой уплывают в базу данных Mysql. В одно из полей формы пользователь должен будет вводить слова через пробел. К примеру так [быдла лох пожарник пропан мясо ....] Так вот как мне сделать чтобы юзер мог ввести только 10 таких (любых) слов Как сделать это на php?
ну проверить количество слов ты можешь посчитать только непосредственно через пробелы.... Code: procedure tform1.parserx(var s:string); var i:integer; m:string; a:array of string; begin if s[1]=' ' then delete(s,1,1); if s[length(s)]=' ' then delete(s,length(s),1); i:=1; n:=1; s:=s+' '; while i<=length(s) do begin if s[i]=' ' then begin a[n]:=copy(s,1,i-1)); b[n]:=a[n]; delete(s,1,i); i:=0; n:=n+1; end; i:=i+1; end; end; вот пример кода только он на дельфи..разберешься..
хотя mr.The сделал правильнее....мой пример просто отделяет каждые слова..еще вырезай пробелы в начале и конце строки...если они там есть.
это ж на дельфи 0_о ты походу разделом ошиблся))) функция explode развивает строку на построки(в данном случае делитель - пробел) и запаисывает в масив а функция count считает длинну масива. ну echo, понятно, всё выводит)) да ты прав. токгда лучше так PHP: <?php echo count(explode(" ",trim("раз два три "))) ?> функция trim очищает пробелы и переносы строки с начала и конца строки (0_о)
PHP: <html><head></head><body> <form method='post' action=''> <input type='text' name='data'> <input type='submit'> </form> </body></html> <?php $data = $_POST['data']; $ar = explode(' ', $data); if(count($ar) > 10){ echo 'no'; } else { echo 'yes'; } ?>