За последние 24 часа нас посетил 24881 программист и 1701 робот. Сейчас ищут 890 программистов ...

mysql_real_escape_string() и addslashes()

Тема в разделе "PHP для новичков", создана пользователем WildZero, 1 июн 2010.

  1. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    Добрый день.
    Прочитал прикрепленные топики о безопасности, но все равно до конца не усвоил.
    Достаточно ли addslashes () для входящих данных, или строковые данные все равно требуется обрабатывать mysql_real_escape_string()?
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
  3. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    Тогда возникает ещё один вопрос:
    Если без разбору обрабатывать mysql_real_escape_string () весь массив $_REQUEST. Это не гуд?
     
  4. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    + mysql_real_escape_string обрабатывает строки в многобайтных кодировках
    http://phpfaq.ru/slashes

    Если без разбору обрабатывать всё подряд чем угодно, то это в любом случае не правильно
     
  5. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    Ну естественно, в $_REQUEST только вводимые данные.
     
  6. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    неважно. это не гуд, потому что даст проблем
     
  7. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    Ок. Спасибо за ответы.
     
  8. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    $_REQUEST — это глобальная помойка, данные надо брать оттуда, куда их передаёшь. А вдруг в разных массивах ключи с одним и тем же именем?
     
  9. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    т.е. ты имеешь ввиду $_POST u $_GET?
     
  10. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    про то что ты можешь использоваться и $_POST и $_GET и $_COOKIE, а $_REQUEST это все вместе
     
  11. WildZero

    WildZero Активный пользователь

    С нами с:
    24 фев 2010
    Сообщения:
    242
    Симпатии:
    0
    Адрес:
    Пермь
    Padaboo
    Это то я знаю.
    Я имел ввиду что лучше пользоваться $_POST и $_GET?
     
  12. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    я юзаю пост только когда какая нибудь авторизация, регистрация, редактирование и т.п. вот смотри наверх гетом переданная переменная t=25857 как бы я скажем другу дал ссылку на тему в аську если был бы пост ?
     
  13. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Другими словами это звучит так:

    Методом GET передаются данные через адресную строку. И хоть не существует строго регламентированного размера данных, которые передаются методом GET, стоит рассматривать с качестве стандарта длину, равную 256 символам.
    Это не требование, это - рекомендация.

    Методом POST посылаются списки данных или такие вещи, которые не должны быть видны в строке браузера, например, пароли.
    Содержимое TextArea мы перешлем же методом POST, а не GET =)
    Кроме того, возможно использовать одновременно сразу оба этих метода для разных типов данных.