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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какую функцию лудше использовать, для экранирования символов? 
:(
    Опции темы
Nickname
Дата 7.9.2007, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



Что лудше использовать функцию mysql_escape_string() или функцию addslashes() при добавлении данных в базу?
PM MAIL   Вверх
Acer
Дата 7.9.2007, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

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



Я всегда юзаю addslashes();
PM MAIL   Вверх
Diesel Draft
Дата 7.9.2007, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



Я тоже всегда addslashes(), но так подумал что mysql_escape_string() тоже для чего то есть, и возможно даже лучше. Ну ж не просто так написали ж


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Fally
Дата 7.9.2007, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 3
Всего: 4



mysql_real_wscape_string() её советуют использовать сами разработчики, из-за того, что она экранирует данный в зависимости от настроек сервера БД, т.е. никаких глюков вообще не будет, но лучше использовать DbSimple, написанную Дмитрием Котеровым.


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Nickname
Дата 7.9.2007, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



По ходу задам еще один вопрос: нужно ли использовать какую-нибудь из этих функций, когда включено magic_quotes_gpc?
PM MAIL   Вверх
Fally
Дата 7.9.2007, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 3
Всего: 4



Для этого люди используют stripslashes(), чтобы избавиться от работы "магических кавычек", а потом используют одну из вышеперисленных функций. А вообще в .htaccess можно отрубить magic_quotes_gpc, т.к. она не нужна (отрубить можно при условии что РНР скомпилирован как модуль Apache)


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Nickname
Дата 7.9.2007, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



Цитата(Fally @ 7.9.2007,  15:39)
Для этого люди используют stripslashes(), чтобы избавиться от работы "магических кавычек", а потом используют одну из вышеперисленных функций.

А можно сделать так?
Код

 if(!get_magic_quotes_gpc())    
    $name1=mysql_real_escape_string($name1);

PM MAIL   Вверх
Fally
Дата 7.9.2007, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 3
Всего: 4



в принципе, да. Но мне такой подход кажется неудобным. Буквально 1,5 месяца назад видел пример отключения этой директивы, но память вещь короткая (:.. Посмотрите в инете, там есть пример.. А вообще, посоветую Вам использовать уже готовую библиотеку для работы с БД (например DbSimple), о которой я писал выше.

Это сообщение отредактировал(а) Fally - 7.9.2007, 15:50


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Nickname
Дата 7.9.2007, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



Спасибо.
PM MAIL   Вверх
Guedda
Дата 7.9.2007, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


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

Репутация: 13
Всего: 78



Котеров рекомендует использовать mysql_escape_string()


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Fally
Дата 7.9.2007, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 3
Всего: 4



Guedda, Правда? Это он писал в своей книге "РНР5 в подлиннике", но судя по этому коду:
Код

function _performEscape($s, $isIdent=false)
{
    if (!$isIdent) {
        return "'" . mysql_real_escape_string($s, $this->link) . "'";
    } else {
        return "`" . str_replace('`', '``', $s) . "`";
    }
}

взятому из его библиотеки DbSimple, могу сказать обратное + книга вышла минимум 2 года назад, и прочтите, что пишут на php.net по поводу этих двух функций.


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Nickname
Дата 7.9.2007, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: нет
Всего: 1



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


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

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