![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| g27 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
Здравствуйте. Делаю так.
но за разделители принимаются и плюсы, тоесть +. Почему так? Как сделать что бы только по пробелам? Спасибо. |
|||
|
||||
| Pitlord |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 31.10.2009 Репутация: нет Всего: 7 |
g27, split() является устаревшей функцией, используй preg_split():
Можно даже explode(), но тогда будут пустые элементы при нескольких пробелах подряд. P.S. POSIX-функции, включая split(), не использовал ни разу, поэтому ответить на сам вопрос затрудняюсь. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 2 Всего: 315 |
проблема возникает скорее всего потому, что вы не кодируете данные перед передачей.
откуда и как отправляются данные? |
|||
|
||||
| g27 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
Pitlord, спасибо. Но ситуация не поменялась.
bars80080, данные идут из формы через ajax. Всмысле не кодируются? Что-то с кодировкой не так? Это сообщение отредактировал(а) g27 - 15.11.2009, 10:29 |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 1 Всего: 37 |
неужели так сложно написать всего одну строчку,
$search_array=split(" ","ааа ббб+ввв"); var_dump($search_array); и посмотреть, что она выведет? как можно заниматься программированием вслепую? оперируя не реальными строками, а воображаемыми? Это сообщение отредактировал(а) Ипатьев - 15.11.2009, 10:41 |
|||
|
||||
| g27 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
возможно функция декодирования не так работает как надо...
|
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 2 Всего: 315 |
я бы стал проверять данные пресуемые на аяксе. какие входят, как преобразуются, что получается. запустил бы тестовый пример (ааа ббб+ввв), где было бы видно, при отсылке + и пробел имеют одинаковый код или нет.
имхо, на передаче нету функции encodeURIComponent() а может есть какие дополнительные обработки Добавлено через 1 минуту и 48 секунд п.с. это в дополнение, к тому что сказал Ипатьев |
|||
|
||||
| g27 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
Ипатьев, как видите можно.
Оказалось что + пропадает потом, видимо + и пробел имеет один и тот же код. |
|||
|
||||
| Pitlord |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 31.10.2009 Репутация: нет Всего: 7 |
Эти 2 символа имеют разный код. Просто при URL-кодировании значений параметров в query string разрешается использовать +, а не %20 вместо пробела. Непонятно только каким образом Вы получаете строку в таком виде, если в массивы $_POST, $_GET попадают уже декодированные значения. |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 1 Всего: 37 |
g27, как вижу - нельзя. Все разваливается в момент.
При этом не нужно никаких особенных навыков программирования. Надо просто элементарно проверять свои догадки. Только так можно добраться до настоящей причины |
|||
|
||||
| g27 |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
от отсюда уже приходит не правильно... смотреть нужно тока там где input обрабатывает. смотрел в других местах сайта, везде тоже самое. Это сообщение отредактировал(а) g27 - 15.11.2009, 16:55 |
||||
|
|||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 2 Всего: 315 |
вот почему полезно смотреть за тенденциями развития. не с дуру же выкинули ентот escape и поставили заместо него encodeURIComponent
escape не кодирует плюсы |
|||
|
||||
| g27 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 29.9.2007 Где: Vilnius Репутация: нет Всего: нет |
bars80080, о да, точно. Спасибо!!!
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Тексты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |