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

Форум PHP

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

 

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

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

тема: магические кавычки, как избавиться от этого безобразия?
 
 автор: antf   (18.06.2005 в 00:44)   письмо автору
 
 

Здравствуйте
На хостинге установлена директива magic_quotes_gpc = on, в результате, в элементах формы кавычки постоянно экранируются, что приводит к порче текста. Неужели при таком раскладе придется постоянно применять stripslashes ко всем переменным формы? Можно ли как-то отключить это безобразие? Зачем вообще нужны "магические" кавычки?
Заранее спасибо за ответ

   
 
 автор: antf   (18.06.2005 в 01:19)   письмо автору
 
   для: antf   (18.06.2005 в 00:44)
 

Наверное, здесь поможет такая функция:

<?
function remove_slashes_from_globals()
  {
    if(
is_array($_POST))
      foreach(
$_POST as $key $value)
        
$_POST[$key] = stripslashes($value);
    if(
is_array($_COOKIE))
       foreach(
$_COOKIE as $key $value)
        
$_POST[$key] = stripslashes($value);
  }
?> 

   
 
 автор: cheops   (18.06.2005 в 02:24)   письмо автору
 
   для: antf   (18.06.2005 в 00:44)
 

Магические кавычки - эффективное средство борьбы против SQL-инъекций.

   
 
 автор: Чебурген   (18.06.2005 в 13:38)
 
   для: cheops   (18.06.2005 в 02:24)
 

Про эффективное средство - это большое заблуждение.
подробнее можно прочесть по ссылке, которую дал to4kaRU

   
 
 автор: to4kaRU   (18.06.2005 в 10:54)   письмо автору
 
   для: antf   (18.06.2005 в 00:44)
 

Вообще странно, по идее при экранировании кавычек, в базу они не попдают и strip при выборке применять не нужно.
Я использую слудеющую функцию

if (get_magic_quotes_gpc()==0) {
    $text = mysql_real_escape_string($text);
}


Можешь почитать по ссылке:

   
 
 автор: antf   (20.06.2005 в 11:51)   письмо автору
 
   для: to4kaRU   (18.06.2005 в 10:54)
 

Как вы думаете, не возникнет ли брешь в системе безопасности сайта, если я отключу обработку данных функцией mysql_escape_string(), при условии, что директива magic_quotes_gpc включена?

   
 
 автор: to4kaRU   (20.06.2005 в 15:39)   письмо автору
 
   для: antf   (20.06.2005 в 11:51)
 

Думаю, не возникнет брешь, связанная с SQL-инъекциями, от других угроз это не спасет, однако для переносимости скрипта, я бы не стал убирать подобную обработку данных.

   
Rambler's Top100
вверх

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