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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> magic_quotes_runtime и PHP 5.3+ 
:(
    Опции темы
Gold Dragon
Дата 15.6.2012, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Появился PHP5.3 и magic_quotes_runtime стала устаревшей, а в будущем неприемлемой. Как грамотно изменить подобные ситуации в проекте и избавится от проверки и дальнейшей (в зависимости от результата) обработки поступающих данных?

решения по экранированию при помощи @ не нужно рассматривать в этой теме

Добавлено @ 18:32
что-то с тупил... ini_set()  smile

Добавлено через 10 минут и 6 секунд
хотя так и не понял из документации вообще этот параметр будет или не будет в PHP

Это сообщение отредактировал(а) Gold Dragon - 15.6.2012, 18:34


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Wolf1994
Дата 16.6.2012, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 7
Всего: 29



Проверьте существование функции.
PM MAIL WWW   Вверх
Gold Dragon
Дата 16.6.2012, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



да я вообще больше про само экранирование.. не совсем понятно как будет осуществляться экранирование в будущем


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Wolf1994
Дата 16.6.2012, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 7
Всего: 29



Кавычки будут отключены в новых версиях без возможности включения. В старых - отключаются через set_magic_quotes_runtime. Для определения разницы можно проверять версию PHP или существование соответсвующего функционала.

Считается, что экранирование правильно делать вручную:

Цитата

Magic Quotes is a process that automagically escapes incoming data to the PHP script. It's preferred to code with magic quotes off and to instead escape the data at runtime, as needed. 


Это сообщение отредактировал(а) Wolf1994 - 16.6.2012, 09:48
PM MAIL WWW   Вверх
Sanchezzz
Дата 16.6.2012, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 41
Всего: 60



а я не отрубаю мне они не мешают просто в точке инициализации конфига и базовых функций использую stripslashes на глобальные переменные
Код

if(  ( function_exists("get_magic_quotes_gpc") && get_magic_quotes_gpc() == 1 ) ){
  stripslashes_array($_GET);
  stripslashes_array($_POST);
  stripslashes_array($_COOKIE); 
  stripslashes_array($_REQUEST);
  if (isset($_SERVER['PHP_AUTH_USER'])) stripslashes_array($_SERVER['PHP_AUTH_USER']); 
  if (isset($_SERVER['PHP_AUTH_PW']))   stripslashes_array($_SERVER['PHP_AUTH_PW']);
}


Код

function stripslashes_array($array) {
  return is_array($array) ?
    array_map('stripslashes_array', $array) : stripslashes($array);
}


Это сообщение отредактировал(а) Sanchezzz - 16.6.2012, 14:07


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Gold Dragon
Дата 16.6.2012, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Я пишу CMS (вернее развиваю). Так вот, сейчас полностью отказываемся от поддержки PHP <5.3
По этому и вопрос, может сразу использовать разэкранирование и не проверять существует или нет поддержка


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
teroni
Дата 18.6.2012, 02:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



ИМХО, CMS надо делать так, чтобы она беспроблемно работала на любой версии php (в рамках разумного конечно, на те версии, которые используются меньше 1% юзеров можно забить).
Проще кодеру написать несколько (десятков) лишних строчек, чем каждому из юзеров добиваться повышения своей версии до 5.3+.
PM MAIL   Вверх
Gold Dragon
Дата 18.6.2012, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Цитата(teroni @  18.6.2012,  03:03 Найти цитируемый пост)
ИМХО, CMS надо делать так, чтобы она беспроблемно работала на любой версии php
Условие определили. Проще говоря, не нравится, используй старую версию ну или другую CMS. Поддержка нескольких версий - это трата времени, а следовательно и денег smile Практически везде уже 5.3+ ну и тем более точно будет к стабилизации новой версии...



--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0746 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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