Перевод disallowed key characters

Правила форума

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщений 7

1 Тема от brazhko 23-12-2010 15:30:45

  • brazhko
  • знакомлюсь с ImageCMS
  • Неактивен
  • Откуда: Украина, Луганская обл.
  • Зарегистрирован: 20-05-2010
  • Сообщений: 5

Тема: Русскоязычные теги и Disallowed Key Characters

Добрый день. При открытии любого русскоязычного тега получаю сообщение

Подскажите, пожалуйста, как решить проблему.

2 Ответ от admin 23-12-2010 19:07:01

  • admin
  • Administrator
  • Неактивен
  • Зарегистрирован: 05-01-2010
  • Сообщений: 429
  • User Karma: 6

Re: Русскоязычные теги и Disallowed Key Characters

Можете в файле system/libraries/Input.php функцию

и показать результат?

3 Ответ от brazhko 23-12-2010 22:07:43

  • brazhko
  • знакомлюсь с ImageCMS
  • Неактивен
  • Откуда: Украина, Луганская обл.
  • Зарегистрирован: 20-05-2010
  • Сообщений: 5

Re: Русскоязычные теги и Disallowed Key Characters

string(27) «/tags/search/новинки» string(3) «iua» string(1) «b» string(15) «createnewlink_w» string(15) «createnewlink_h» string(6) «__utmz» string(9) «PHPSESSID» string(6) «__utma» string(6) «__utmc» string(6) «__utmb»

A PHP Error was encountered
Severity: Warning

Message: session_start() [function.session-start]: Cannot send session cookie — headers already sent by (output started at Z:\home\krok.biz\www\system\libraries\Input.php:218)

4 Ответ от admin 23-12-2010 23:54:50 Отредактировано admin (23-12-2010 23:55:25)

  • admin
  • Administrator
  • Неактивен
  • Зарегистрирован: 05-01-2010
  • Сообщений: 429
  • User Karma: 6

Re: Русскоязычные теги и Disallowed Key Characters

Создайте файл ./application/libraries/MY_Input.php c таким текстом:

5 Ответ от brazhko 24-12-2010 14:39:10

  • brazhko
  • знакомлюсь с ImageCMS
  • Неактивен
  • Откуда: Украина, Луганская обл.
  • Зарегистрирован: 20-05-2010
  • Сообщений: 5

Re: Русскоязычные теги и Disallowed Key Characters

К сожалению не работает.

6 Ответ от stansmolin 25-12-2010 07:06:31

  • stansmolin
  • знакомлюсь с ImageCMS
  • Неактивен
  • Зарегистрирован: 25-12-2010
  • Сообщений: 1

Re: Русскоязычные теги и Disallowed Key Characters

В aplication/libraries создайте MY_URI.php с кодом:

в application/config/config.php измените $config[‘permitted_uri_chars’] на:

7 Ответ от De1iter 17-02-2014 00:27:37

  • De1iter
  • начал пользоваться ImageCMS
  • Неактивен
  • Зарегистрирован: 17-07-2013
  • Сообщений: 21
  • User Karma: -1

Re: Русскоязычные теги и Disallowed Key Characters

Сделал всё по инструкции, всё не работает. Версия 4.4.5 shop

Ошибка следующая:
string(6) «__utma» string(6) «__utmz» string(9) «autologin» string(4) «lt-v» string(9) «PHPSESSID» string(6) «__utmc» string(5) «lt-tl» string(5) «lt-pc» string(15) «lt-on-site-time»

Источник

Недопустимые ключевые символы CodeIgniter

CodeIgniter дает мне ошибку Disallowed Key Characters . Я сузил его до атрибута name поля формы: name=’prod[50-4121.5]’ , но я не уверен, что с этим делать.

Проблема заключается в том, что вы используете символы, не включенные в стандартное Regex. Используйте это:

В соответствии с комментариями (и личным опытом) вы не должны изменять их Input.php файл — скорее, вы должны создать/использовать свой собственный MY_Input.php следующим образом:

++ Поддержка китайских иероглифов

Откройте libraries/Input.php ( system/core/Input.php в CI версии 2.0+) и найдите function _clean_input_keys($str)< , весь блок должен выглядеть так:

Измените сокет PCRE, чтобы он разрешал новые символы.

Пожалуйста, не считайте, что char отсутствует . (точка), и вы всегда должны избегать . (точка) в регулярных выражениях, поскольку в противном случае они разрешат любой одиночный char.

Чтобы использовать CodeIgniter с jQuery Ajax, используйте «Object» в качестве данных вместо строки Query, как показано ниже:

Php будет оценивать, что вы написали между скобками [].

Создает string(6) «apples» , потому что он возвращает $foo [2].

Если вы хотите, чтобы это как строка, поместите туда перевернутые запятые.

Я получил эту ошибку при отправке данных из текстового редактора, где я включил амперсанд. Замена амперсанда на% 26 — кодировка URL амперсанда — решила проблему. Я также обнаружил, что запрошенный jQuery ajax-запрос, подобный этому, волшебным образом решает проблему:

где объект json является, неожиданным, неожиданным, объектом JSON, содержащим свойство со значением, которое содержит амперсанд.

Пожалуйста, добавьте $str для выхода ( «Запрещенные ключевые символы.» ); Например: exit (‘Disallowed Key Characters.’. $Str);

чтобы помочь вам в поиске ошибок изгоев.

У меня была такая же ошибка после того, как я опубликовал форму. Я просто пропустил вводную цитату в одном из моих атрибутов имени ввода. У меня было:

Фиксация, которая избавилась от ошибки.

Откройте libraries/Input.php ( system/core/Input.php в CI version 2.0+ ) и найдите функцию _clean_input_keys($str)< ,

Измените if ( ! preg_match(«/^[a-z0-9:_\/-]+$/i», $str)) на if ( ! preg_match(«/^[a-z0-9:_\-|]+$/i», $str))

У меня была такая же проблема благодаря французским персонажам. Вот мой класс, если кому-то это понадобится. Он должен быть сохранен здесь:/application/core/MY_Input.php

(также это расширение сообщит, что символ ведьмы в будущем не допускается)

Шаг1. Поиск функции _clean_input_keys на /system/core/Input.php

Шаг2. Измените эту строку

exit («Запрещенные ключевые символы.);

exit («Запрещенные ключевые символы. $str);

Step3. Обновить страницу, чтобы увидеть символы, которые генерируют ошибку

Step4. Если вам нужно добавить эти символы в список исключений, просто добавьте в эту строку

Я добавляю | (pipe) в примере выше

У меня была такая же ошибка после того, как я опубликовал форму. у них есть пробел в моих атрибутах имени ввода. input name= ‘first_name’

Фиксация, которая избавилась от ошибки.

В моем случае я сериализовал входную форму, используя jquery serialize(), а затем urlencoding с помощью encodeURIComponent().

и codeigniter выдавал недопустимую символьную ошибку.

Я понял, что проблема здесь: jquery serialize дает кодированный вывод, и я снова кодировал его с помощью encodeURIcomponent, который был лишним, и когда кодировщик декодировал его, он не получал фактическую строку, поскольку некоторая часть была закодирована дважды. я объясню это на примере.

который отклонил charecters в соответствии с переменным класса ввода.

Примечание: это не ответ на этот вопрос, но поможет проверить, не встречается ли эта ошибка. спасибо.

Источник

CodeIgniter Disallowed Key Characters

CodeIgniter is giving me a Disallowed Key Characters error. I’ve narrowed it down to the name attribute of a form field: name=’prod[50-4121.5]’ but I’m not sure what to do about it.

21 Answers 21

The problem is you are using characters not included in the standard Regex. Use this:

As per the comments (and personal experience) you should not modify they Input.php file — rather, you should create/use your own MY_Input.php as follows:

++Chinese Character Support

Open libraries/Input.php ( system/core/Input.php in CI version 2.0+) and locate function _clean_input_keys($str)< , The whole block should look like so:

Modify the PCRE sot that it allows the new chars.

Please not that the char thats missing is the . (dot) and you should always escape the . (dot) in Regular Expressions as they will otherwise allow any single char.

To use CodeIgniter with jQuery Ajax, use «Object» as data instead of Query string as below:

Step1. Search for function _clean_input_keys on /system/core/Input.php

Step2. Modify this line

exit(‘Disallowed Key Characters.’);

exit(‘Disallowed Key Characters.’ . $str);

Step3. Refresh page to see the characters which generate the error

Step4. If you need to add those characters into the exception list, just add to this line

I add | (pipe) character on the example above

Php will evaluate what you wrote between the [] brackets.

Will produce string(6) «apples» , because it returns $foo[2].

If you want that as a string, put inverted commas around it.

I got this error when sending data from a rich text editor where I had included an ampersand. Replacing the ampersand with %26 — the URL encoding of ampersand — solved the problem. I also found that a jQuery ajax request configured like this magically solves the problem:

where the object json is, surprise, surprise, a JSON object containing a property with a value that contains an ampersand.

Please add .$str to exit(‘Disallowed Key Characters.’); Like: exit(‘Disallowed Key Characters. ‘.$str);

to help you in your search for rogue errors.

I had the same error after I posted a form of mine. I simply missed the opening quote in one of my input name attributes. I had:

Fixing that got rid of the error.

Open libraries/Input.php ( system/core/Input.php in CI version 2.0+ ) and locate function _clean_input_keys($str)< ,

Modify if ( ! preg_match(«/^[a-z0-9:_\/-]+$/i», $str)) to if ( ! preg_match(«/^[a-z0-9:_\-|]+$/i», $str))

I had the same problem thanks to french specials characters. Here is my class in case anybody needs it. It has to be saved here : /application/core/MY_Input.php

(also this extension will report witch character is not allowed in the future)

I had the same error after I posted a form of mine. they have a space in to my input name attributes. input name=’ first_name’

Fixing that got rid of the error.

In my case, i was serializing an input form using jquery serialize() and then urlencoding it using encodeURIComponent().

and codeigniter was giving the disallowed character error.

i figured the issue here was, jquery serialize gives an encoded output and i was again encoding it with the encodeURIcomponent which was unnecessary, and when codeingiter decoded it it was not getting the actual string as some part was encoded twice. i will explain it with an example.

which has disallowed charecters as per the input class regex.

note: this is not an answer to this question, but would help to check if one is encountering this error. thanks.

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии