|
|
|
| Есть форма с текстовым полем и кнопкой, по нажатию на которую текст (а именно код HTML) в текстовом поле сохраняется в файл 1.html на сервере. Всё бы ничего, да только после сохранения в документе 1.html перед символами раздельтелями " \ ' добавляется ещё один обратный слеш. Приведу примеры:
_________________________________
Текстовое поле
1.html
_________________________________
Текстовое поле
1.html
_________________________________
Текстовое поле
1.html
_________________________________
Как с этой напастью бороться? Выручайте Люди Добрые... | |
|
|
|
|
|
|
|
для: blackcement
(22.02.2009 в 19:14)
| | это происходит не после сохранения, а раньше.
как правило, из-за включенного magic_quotes_gpc в php.ini
выход - выключить. | |
|
|
|
|
|
|
|
для: Trianon
(22.02.2009 в 20:34)
| | А где это выключается? На моём серваке или ещё дописать что-нибудь надо в пхп код?
Другой выход из этой ситуации есть? | |
|
|
|
|
|
|
|
для: blackcement
(22.02.2009 в 20:58)
| | Выключается, как я написал уже, в php.ini .
если нет доступа к php.ini, то допишите строку в .htaccess
php_flag magic_quotes_gpc Off
|
в php код при этом ничего дописывать не нужно. | |
|
|
|
|
|
|
|
для: Trianon
(22.02.2009 в 21:08)
| | .htaccess тот который лежит в папке со скриптом сохранения? | |
|
|
|
|
|
|
|
для: blackcement
(22.02.2009 в 21:16)
| | да.
Хотя можно и выше.
Я бы добавил в тот, который в корне документов. | |
|
|
|
|
|
|
|
для: Trianon
(22.02.2009 в 21:22)
| | Создал файл:
.htaccess
php_flag magic_quotes_gpc Off
|
Запихал его в каталог с ПХП скриптом сохранения, всё работает!
Trianon, выражаю огромную благодарность! Спасибо! | |
|
|
|
|
|
|
|
для: Trianon
(22.02.2009 в 21:08)
| | ну а если без отключения, просто применить stripslashes()? | |
|
|
|
|
|
|
|
для: Slo_Nik
(23.02.2009 в 12:47)
| | зачем?
Если можно сделать по-человечески? | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2009 в 13:05)
| | а если не разрешено использования файлов .htaccess?
и почему это не по человечески? | |
|
|
|
|
|
|
|
для: Slo_Nik
(23.02.2009 в 13:49)
| | >а если не разрешено использования файлов .htaccess?
достаточно редкая ситуация.
тогда помимо stripslashes() нужно использовать get_magic_quotes_gpc(), и array_map()/array_walk_recursive
ко всем $_GET, $_POST, $_COOKIE и $_REQUEST
>и почему это не по человечески?
потому что сами magic quotes - это ошибка.
И чем устранять последствия, логичнее устранить ошибку. | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2009 в 14:02)
| | >достаточно редкая ситуация.
вот на такую ситуацию и нарвался на бесплатном.
по поводу остального....
сваял функцию, выложу позже, что бы люди глянули, может не заплюют её, а может.... :) | |
|
|
|
|
|
|
|
для: Slo_Nik
(23.02.2009 в 14:18)
| | Все уже сваяно до Вас:)
<?
function stripslashes_deep($value)
{
if( is_array($value) )
{
$value = array_map('stripslashes_deep', $value);
}
elseif ( !empty($value) && is_string($value) )
{
$value = stripslashes($value);
}
return $value;
}
if (get_magic_quotes_gpc())
{
$_POST = stripslashes_deep($_POST);
$_GET = stripslashes_deep($_GET);
$_COOKIE = stripslashes_deep($_COOKIE);
$_REQUEST = stripslashes_deep($_REQUEST);
}
|
| |
|
|
|
|
|
|
|
для: Loki
(23.02.2009 в 17:40)
| | Круто! Но не понятно... Мой хостинг ПХП поддерживает, неужели Вы думаете, что .htaccess файл создать не смогу? | |
|
|
|
|
|
|
|
для: blackcement
(14.04.2009 в 10:50)
| | Если PHP подключен не как модуль Аппача, то создать то вы сможете, но попытка установить флаги неизбежно вызовет 500-ю ошибку. Но в таком случае обычно есть локальный ini, что в принципе хоть какая то, но замена. | |
|
|
|