X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Экранирование
DAbro
DAbro
Topic Starter сообщение 31.3.2009, 13:44; Ответить: DAbro
Сообщение #1


Здрасте вам.
есть ли функция которая экранирует опасные символы в тексте (в переменной)?
проблема вот в чем:
есть форма для ввода текста, который записывается в базу при нажатии кнопки, причем все успешно даже если там есть кавычки.
но если етот текст прочитать в переменную из базы и снова попробовать записать то уже вылазиит ошибка (только в случае если есть опасные символы, типа кавычек)

т.е. я так понимаю в переменной $_POST['text'], при передаче данных формы, эти символы както экранируются
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
pomp
pomp
сообщение 31.3.2009, 13:54; Ответить: pomp
Сообщение #2


насколько я понял, Вам нужна:
[PHP]htmlspecialchars()[/PHP]

Режимы:
ENT_COMPAT - преобразуются двойные кавычки.
ENT_QUOTES - преобразуются и двойные и одинарные кавычки.
ENT_NOQUOTES - нифига не преобразуеться.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
DAbro
DAbro
Topic Starter сообщение 31.3.2009, 17:56; Ответить: DAbro
Сообщение #3


а как ее лучше ипользовать?? при записи в базу?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
pomp
pomp
сообщение 31.3.2009, 18:12; Ответить: pomp
Сообщение #4


Лучше перед записью.

[php]
...
// предпологаеться что мы уже получили запись из поля ввода,
$posted = "<a href='link.html'>тут у нас допустим что то с кавычками</a>"; // записываем ее в переменную
$add = htmlspecialchars($posted, ENT_QUOTES); // убираем кавычки
// теперь все из переменной $add можно смело пихать в БД
...
[/php]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
сообщение 1.4.2009, 0:25; Ответить: Licoric
Сообщение #5


илши использовать замену символов. Тема была...

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


 



RSS Текстовая версия Сейчас: 26.4.2024, 4:54
Дизайн