Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> пропустить пробел в регулярном выражении 
:(
    Опции темы
supervladislav
Дата 3.9.2008, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9




подскажите пожалуйста ,мне нужно проверить кол-во символов и чтобы все символы были цифры ,но дело в том что если поле незаполнено 
пхп считает его за пробел ,подскажите можно было бы это как-то исключить.Чтобы если в поле небыло ничего ,не вываливалось 
сообщение тоесть чтобы условие невыполнялось
Код

<? if(!preg_match("/^[0-9]{1,15}$/",$cena) && $_SERVER['REQUEST_METHOD']=='POST' && strlen($cena)<=15) {?>
<tr align="left" width=400px>
    <td colspan="2" height=20  align="center"><span class=gr><font color=red>Введите числовое значение цены,не больше 15 символов</font></span></td>
    </tr>

<? } ?>

PM MAIL   Вверх
skyboy
Дата 3.9.2008, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(supervladislav @  3.9.2008,  15:28 Найти цитируемый пост)
но дело в том что если поле незаполнено 
пхп считает его за пробел

кто тебе такое сказал? в PHP искусственный интеллект не встроен, между прочим.
PM MAIL   Вверх
gta4kv
Дата 3.9.2008, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



1) а is_numeric чем не подошёл?
2) якобы «пробелы» попробуйте убрать с помощью trim( )
3) ваш код из раза в раз выглядит всё ужасающее - ужасающее... когда уже научимся html отделять от php?

Добавлено через 1 минуту и 51 секунду
и это... var_dump( ) тоже никто не отменял.. показали бы хоть

Это сообщение отредактировал(а) gta4kv - 3.9.2008, 22:34
PM MAIL   Вверх
supervladislav
Дата 4.9.2008, 10:17 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



gta4kv, если ненравится несмотри 
я спрашивал  как сделать так ,чтобы когда пользователь не ввёл ничего чтобы условие невыполнялось как это вбить в регулярку
Код

!preg_match("/^[0-9]{1,15}$/",trim($cena))

как вот в это выражение где [0-9] вписать ещё пробел

Это сообщение отредактировал(а) supervladislav - 4.9.2008, 11:22
PM MAIL   Вверх
gta4kv
Дата 4.9.2008, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



Цитата

как вот в это выражение где [0-9] вписать ещё пробел

А мануал для кого предумали!? (\s) - пробел, \t, \n, \r


и прочитайте пост выше мой, можно и без регулярки обойтись..

Цитата

"/^[0-9]{1,15}$/"

бугага, 15 символов!?

Это сообщение отредактировал(а) gta4kv - 4.9.2008, 13:52
PM MAIL   Вверх
supervladislav
Дата 4.9.2008, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



\s  данный симыол вписывается вот сюда
 
Код

"/^[0-9\s]{1,15}$/"



Это сообщение отредактировал(а) supervladislav - 4.9.2008, 14:40
PM MAIL   Вверх
supervladislav
Дата 4.9.2008, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



так-как ты придлогал не получилось )))))
как в регулярку пробел то вставить я правильно делаю )))выше 
PM MAIL   Вверх
supervladislav
Дата 7.9.2008, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



Всёравно  условие почему-то выполняется

Код

<? if(!preg_match("/^[\s0-9]{1,15}$/",trim($cena)) && $_SERVER['REQUEST_METHOD']=='POST' && strlen($cena)<=15) {?>
<tr align="left" width=400px>
    <td colspan="2" height=20  align="center"><span class=gr><font color=red>Введите числовое значение цены,не больше 15 символов</font></span></td>
    </tr>

<? } ?>

PM MAIL   Вверх
gta4kv
Дата 7.9.2008, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



Код

if( ! is_numeric( trim( $cena ) ) or strlen( $cena ) > 15 )
{
         .....
}


Это сообщение отредактировал(а) gta4kv - 7.9.2008, 19:17
PM MAIL   Вверх
supervladislav
Дата 7.9.2008, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



а как работатет  is_numeric
а как моё выражение изменить так чтобы к цифрам добавить ещё пробел )))этож очень просто помойму
PM MAIL   Вверх
gta4kv
Дата 8.9.2008, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



Цитата(supervladislav @ 7.9.2008,  19:49)
а как работатет  is_numeric

Я уже ссылку выше показывал, 
http://ru2.php.net/is_numeric ;)
PM MAIL   Вверх
supervladislav
Дата 8.9.2008, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



понятно ,а разве нельзя в выражение какнить это запихнуть )))типо что-то вроде пустого места или пробела

PM MAIL   Вверх
gta4kv
Дата 8.9.2008, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



(\s)
PM MAIL   Вверх
supervladislav
Дата 8.9.2008, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



целое выражение как будет выглядеть

PM MAIL   Вверх
zibox86
Дата 8.9.2008, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 164
Регистрация: 11.12.2007

Репутация: нет
Всего: 1



Вот так попробуй
Код

/^(([0-9]{1,15})|([^\s]))+$/

PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0639 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.