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

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Экранизирование\деэкранизирование кавычек, Кавычки 
V
    Опции темы
Staind
Дата 10.1.2008, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Есть скрипт, который заносит в базу данные. Есть также скрипт, которые читает данные в базе и выводит их на экран.
Скрипт, заносящий в базу данные:
Перед заношением в базу данных я данные обрабатываю функцией mysql_escape_string.

Скрипт, читающий данные из базы:
Перед отображением удаляю экранизирующие слэши функцией stripslashes.

Есть ли другой способ деэранизирования слэшей? Через какой-нибудь if преположим?, чтобы не вызывать при отображении постоянно функцию stripslashes?
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
SelenIT
Дата 10.1.2008, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Все способы другие (stripslashes при выводе - это черт-те что, а не способ). PHP FAQ:  \"Кавычки \". Правильная работа со спецсимволами при составлении запросов


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Staind
Дата 10.1.2008, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



По приведенной вами ссылке есть только "Как обрабатывать данные при вводе в базу". Я их предположим обработал в mysql_real_escape_string. 
Пример: 
Пользователь ввел      вцфкп'wd"
В базе это хранится теперь так    вцфкп\'wd\"
При отображении этих данных на страничке вот что появляется    вцфкп\'wd\"   
Т.е. появляется эта строка но с добавленными слэшами. Мне их как раз и нужно убирать при отображении. А убираю я их функцией stripslashes. Вот и спросил, чтобы не делать эту рутийную работу каждый раз - нету какого-нибудь другого способа?
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
SelenIT
Дата 10.1.2008, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Staind, читайте статью по ссылке целиком. Там написано, откуда на самом деле берутся мешающие слеши.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Sunvas
Дата 10.1.2008, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


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

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



Цитата(Staind @  10.1.2008,  20:58 Найти цитируемый пост)
В базе это хранится теперь так    вцфкп\'wd\"

Очень странно. Я бы даже сказал, что такое невозможно. Вот пример:
Код

echo "\"\"\"";

В браузере будет результат НЕ \"\"\", а """. Следовательно ошибка кроется где-то у Вас в коде. Может покажете его?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
SelenIT
Дата 11.1.2008, 00:25 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Цитата(Sunvas @  10.1.2008,  22:54 Найти цитируемый пост)
Я бы даже сказал, что такое невозможно.

Все возможно smile. А в данном случае даже практически очевидно - magic_quotes_gpc="on"...

Цитата(Sunvas @  10.1.2008,  22:54 Найти цитируемый пост)
В браузере будет результат

Нормальные ПХП-разработчики смотрят результат работы скрипта в коде страницы, а не в браузере.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Staind
Дата 11.1.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



SelenIT, Вы правы, я, когда настраивал локальный сервер Апач, забыл в php.ini выставить magic_quotes_gpc="off" (и не нужно применять stripslashes) - поставил и все работает!
Т.е. при заносе в базу проверяю функцией mysql_real_escape_string, а в самой базе хранится все супер, без дурацких слэшей. Спасибо всем Вам, что помогли.
2Sunvas, Да, вы правы, функцию stripslashes убрал, спасибо большое.
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
GeneralElectric
Дата 11.1.2008, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Sunvas, ты путаешь содержимое строк с их синтаксисом.

SelenIT, внимательнее ;-)
PM MAIL   Вверх
MoLeX
Дата 11.1.2008, 17:15 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



GeneralElectric, тема помечена как решенной, не фиг ее поднимать!!!  smile 


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


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

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