PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (93): В начало « ... 85 86 87 88 89 90 91 92 [93]

> Найдено сообщений: 1388
Okula Отправлено: 30 Октября, 2010 - 12:55:23 • Тема: Фильтрование спецсимволов (ошибка с пробелом) • Форум: Регулярные выражения

Ответов: 9
Просмотров: 468
Не хочет работать регулярка

выводит 0 только если текст в поле не введён, а в остальных случаях всегда 1
даже если просто тектст написан, без символов.
Чтож за фигня такая?
-----------------
Заметил что русские буквы обрабатывает как ошибку.
Okula Отправлено: 29 Октября, 2010 - 01:15:10 • Тема: Фильтрование спецсимволов (ошибка с пробелом) • Форум: Регулярные выражения

Ответов: 9
Просмотров: 468
Ясно.
Okula Отправлено: 29 Октября, 2010 - 01:06:24 • Тема: Фильтрование спецсимволов (ошибка с пробелом) • Форум: Регулярные выражения

Ответов: 9
Просмотров: 468
Uchkuma пишет:
Ну и если нужен именно пробел, а не таб и перенос строки, то лучше таки пробел и поставить, а не \s.


Спасибо. Улыбка
Ну как бы писать просто пробел не хорошо, т.к. \s это и есть любой пробельный символ и он не обработает перевод строки. Это \n делает. Если только модификатор не указать
Okula Отправлено: 29 Октября, 2010 - 00:43:15 • Тема: Фильтрование спецсимволов (ошибка с пробелом) • Форум: Регулярные выражения

Ответов: 9
Просмотров: 468
Uchkuma пишет:
Почему не работает точно не могу сказать, но рекомендую экранировать знак минус и поставить знак плюс непосредственно за символьным классом, а не за подмаской. Хотя последнее зависит от того, что вам нужно в конечном счете.


Пробовал экранировать "-" и "+" переставлял. Толку нет. Мне нужно выводить ошибку сли в тексте есть символы отличные от этих (буквы и цыфры пропускать как разрешённые символы):
. , ? ! - :
Okula Отправлено: 28 Октября, 2010 - 23:26:42 • Тема: Фильтрование спецсимволов (ошибка с пробелом) • Форум: Регулярные выражения

Ответов: 9
Просмотров: 468
При фильтровании текста собержащего пробелы регулярка утрачивает свою работоспособность, если использовать на сервере. В приложении RegexBuddy регулярка работает. Может можно как-то подругому составить?

CODE (htmlphp):
скопировать код в буфер обмена
  1. preg_match('/^([А-яA-z0-9.,?!:-\s])+$/i', $text);
Okula Отправлено: 03 Октября, 2010 - 13:10:18 • Тема: Обработчик merchant.webmoney.ru • Форум: Программирование на PHP

Ответов: 5
Просмотров: 742
Ну так у меня в форме передаются только цыфры, кирилицы нет, а на латинский алфавит кодировка windows-1251 вроде не влияет.
Ошибку мне вот какую выдаёт мерчант
CODE (text):
скопировать код в буфер обмена
  1. продавец не дал разрешение на выполнение операции :
Okula Отправлено: 03 Октября, 2010 - 01:20:22 • Тема: Обработчик merchant.webmoney.ru • Форум: Программирование на PHP

Ответов: 5
Просмотров: 742
JustUserR, да вроде всё правильно, хешь собрал так как на сайте в инструкции написано.
Скрипт написан в UTF-8 это как то влияет?
Okula Отправлено: 03 Октября, 2010 - 00:51:47 • Тема: Обработчик merchant.webmoney.ru • Форум: Программирование на PHP

Ответов: 5
Просмотров: 742
Народ, помогите пожалуйста написать обработчик.
Я пробовал так:

PHP:
скопировать код в буфер обмена
  1. $LMI_HASH = isset($_POST['LMI_HASH']) ? strval($_POST['LMI_HASH']) : '';
  2.  
  3. $LMI_PAYEE_PURSE = isset($_POST['LMI_PAYEE_PURSE']) ? strval($_POST['LMI_PAYEE_PURSE']) : '';
  4. $LMI_PAYMENT_AMOUNT = isset($_POST['LMI_PAYMENT_AMOUNT']) ? strval($_POST['LMI_PAYMENT_AMOUNT']) : '';
  5. $LMI_PAYMENT_NO = isset($_POST['LMI_PAYMENT_NO']) ? strval($_POST['LMI_PAYMENT_NO']) : '';
  6. $LMI_MODE = isset($_POST['LMI_MODE']) ? strval($_POST['LMI_MODE']) : '';
  7. $LMI_SYS_INVS_NO = isset($_POST['LMI_SYS_INVS_NO']) ? strval($_POST['LMI_SYS_INVS_NO']) : '';
  8. $LMI_SYS_TRANS_NO = isset($_POST['LMI_SYS_TRANS_NO']) ? strval($_POST['LMI_SYS_TRANS_NO']) : '';
  9. $LMI_SYS_TRANS_DATE = isset($_POST['LMI_SYS_TRANS_DATE']) ? strval($_POST['LMI_SYS_TRANS_DATE']) : '';
  10. $SECRET_KEY = 'ключь';
  11. $LMI_PAYER_PURSE = isset($_POST['LMI_PAYER_PURSE']) ? strval($_POST['LMI_PAYER_PURSE']) : '';
  12. $LMI_PAYER_WM = isset($_POST['LMI_PAYER_WM']) ? strval($_POST['LMI_PAYER_WM']) : '';
  13.  
  14. $ID_USER = isset($_POST['ID_USER']) ? strval($_POST['ID_USER']) : '';
  15.  
  16. $code = md5($LMI_PAYEE_PURSE.$LMI_PAYMENT_AMOUNT.$LMI_PAYMENT_NO.$LMI_MODE.$LMI_SYS_INVS_NO.$LMI_SYS_TRANS_NO.$LMI_SYS_TRANS_DATE.$SECRET_KEY.$LMI_PAYER_PURSE.$LMI_PAYER_WM);
  17. if ($code != strtolower($LMI_HASH)) { exit(); }
  18. if($ID_USER == "") { exit(); }
  19.  
  20. //действия если всё совпало
  21. .....
  22. .....
  23. //закончелись действия


В Result URL пишу ссылку на эту страницу. Но почему-то при попытке провести оплату в тестовом режиме выдаёт ошибку, что платёж не выполнен.
В чём ошибка?

Страниц (93): В начало « ... 85 86 87 88 89 90 91 92 [93]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB