Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: избавится от проблем, связанных с магическими кавычками
 
 автор: deman-b   (29.08.2007 в 10:24)   письмо автору
 
 


<?php
if(get_magic_quotes_gpc()) {
    if(!empty(
$_GET)) while($i=each($_GET)) $_GET[$i[0]]=stripslashes($i[1]);
    if(!empty(
$_POST)) while($i=each($_POST)) $_POST[$i[0]]=stripslashes($i[1]);
    if(!empty(
$_COOKIE)) while($i=each($_COOKIE)) $_COOKIE[$i[0]]=stripslashes($i[1]);
}
?>

в главный конфигурационный файл вставить вот такой код...
что бы при переносе на хостинг не беспокоится о magic_quotes_gpc...
будет работать?)

   
 
 автор: Loki   (29.08.2007 в 10:34)   письмо автору
 
   для: deman-b   (29.08.2007 в 10:24)
 

До тех пор пока среди элементов не встретится массив - будет:)

   
 
 автор: deman-b   (29.08.2007 в 17:22)   письмо автору
 
   для: Loki   (29.08.2007 в 10:34)
 

ХМмм.... действительно))
может тогда вставить проверку на массив, и если да- то использовать рекурсию... анологично пробеганию по дереву каталогов..
... тогда такой вопрос - как узнать что перед мной переменная или массив??

   
 
 автор: Nemezis   (29.08.2007 в 17:45)   письмо автору
 
   для: deman-b   (29.08.2007 в 17:22)
 

is_array() - finds whether a variable is an array.

   
 
 автор: bronenos   (29.08.2007 в 18:51)   письмо автору
 
   для: Nemezis   (29.08.2007 в 17:45)
 

еще проще
.htaccess
php_value get_magic_quotes_qpc off

   
 
 автор: deman-b   (29.08.2007 в 21:50)   письмо автору
 
   для: bronenos   (29.08.2007 в 18:51)
 

а так - 500 ошибка..

   
 
 автор: bronenos   (29.08.2007 в 21:55)   письмо автору
 
   для: deman-b   (29.08.2007 в 21:50)
 

не то написал... gpc

   
 
 автор: deman-b   (29.08.2007 в 21:58)   письмо автору
 
   для: bronenos   (29.08.2007 в 21:55)
 

интересен тот факт что не работает вооб ще никак!!

php_value get_magic_quotes_gpc off
php_value get_magic_quotes_qpc off
php_value magic_quotes_qpc off
и даже так тоже не работает!!))
php_value magic_quotes_gpc off

   
 
 автор: bronenos   (29.08.2007 в 23:35)   письмо автору
 
   для: deman-b   (29.08.2007 в 21:58)
 

это в хтассесс надеюсь все пишете?)))

   
 
 автор: deman-b   (30.08.2007 в 00:25)   письмо автору
 
   для: bronenos   (29.08.2007 в 23:35)
 

угу... конечно и фразу .htaccess тоже)))

   
 
 автор: Loki   (30.08.2007 в 12:15)   письмо автору
 
   для: deman-b   (29.08.2007 в 21:58)
 

Должно быть вот так:

php_flag magic_quotes_gpc off

   
 
 автор: Loki   (30.08.2007 в 12:17)   письмо автору
 
   для: deman-b   (29.08.2007 в 17:22)
 

Обычно такую функцию делают рекурсивной.
<?
   
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);
}

   
 
 автор: deman-b   (29.08.2007 в 22:06)   письмо автору
 
   для: Loki   (29.08.2007 в 10:34)
 

>>До тех пор пока среди элементов не встретится массив - будет:)
кстати на счет массива...
разви возможно передать через GET, POST или COOKIE массив??
я лично не пробовал... :)

   
 
 автор: bronenos   (29.08.2007 в 22:26)   письмо автору
 
   для: deman-b   (29.08.2007 в 22:06)
 

input name="list[]"
input name="list[]"

setcookie("list[me]", "deman-b");

   
 
 автор: deman-b   (29.08.2007 в 22:28)   письмо автору
 
   для: bronenos   (29.08.2007 в 22:26)
 

ладно.. убедил))

   
 
 автор: Gemorroj   (30.08.2007 в 00:47)   письмо автору
 
   для: deman-b   (29.08.2007 в 22:28)
 

deman-b,
попробуй писать не php_value, а php_flag

   
 
 автор: deman-b   (30.08.2007 в 21:37)   письмо автору
 
   для: Gemorroj   (30.08.2007 в 00:47)
 

писал вот так:

php_flag magic_quotes_gpc off

результат:

500 Internal Server Error

ХЗ почему так происходит ...

   
 
 автор: bronenos   (30.08.2007 в 21:47)   письмо автору
 
   для: deman-b   (30.08.2007 в 21:37)
 

а что еще у вас в этом файле написано?

   
 
 автор: deman-b   (30.08.2007 в 21:57)   письмо автору
 
   для: bronenos   (30.08.2007 в 21:47)
 

больше ничего...
и других хтассессов деррикторией выше нет

   
 
 автор: Gemorroj   (30.08.2007 в 22:14)   письмо автору
 
   для: deman-b   (30.08.2007 в 21:57)
 

тогда попробуй еще не off писать а 0
Хотя наверное дело не в этом =)

   
 
 автор: Ralph   (31.08.2007 в 08:13)   письмо автору
 
   для: Gemorroj   (30.08.2007 в 22:14)
 

Может быть дело еще в том,что некоторые сервера так нервно реагируют на ЛЮБОЙ файл .htaccess ,даже самый самый разправильный :( Поэтому на паре хостингов мне приходилось совсем от .htaccess отказываться.Еще помню,на одном хостинге сам файл .htaccess был разрешен,а вот на использование php_flag и php_value был запрет :(

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования