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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: защита полей в PHP, htmlspecialchars и AddSlashes

Сообщения:  [1-10]   [11-16] 

 
 автор: smorodin   (18.01.2007 в 11:34)   письмо автору
 
   для: Sergey89   (18.01.2007 в 10:26)
 

ок, спасибо всем!

   
 
 автор: Sergey89   (18.01.2007 в 10:26)   письмо автору
 
   для: smorodin   (18.01.2007 в 09:20)
 

Разница есть. В базе надо хранить оригинал для того, чтобы его можно было легко редактировать.

   
 
 автор: smorodin   (18.01.2007 в 09:20)   письмо автору
 
   для: Thrasher   (17.01.2007 в 18:00)
 

а какая разница, когда нужно делать преобразования? :)

   
 
 автор: Sergey89   (17.01.2007 в 18:08)   письмо автору
 
   для: Thrasher   (17.01.2007 в 18:00)
 

Thrasher, +1

   
 
 автор: Thrasher   (17.01.2007 в 18:00)   письмо автору
 
   для: mindless   (17.01.2007 в 16:34)
 

Ну так и я про то же.
Но делать эти преобразования нужно при выводе из базы, а не при вводе в нее.
В базе строка хранится в первоначальном виде.

   
 
 автор: mindless   (17.01.2007 в 16:34)   письмо автору
 
   для: Thrasher   (17.01.2007 в 15:55)
 

htmlspecialchars(addslashes($string));

2 Thrasher

htmlspecialchars -- Преобразует специальные символы в HTML сущности
В HTML некоторые символы имеют специальное значение и для сохранения своего значения должны быть преобразованы в HTML сущности. Эта функция возвращает строку, над которой проведены некоторые из таких преобразований

Производятся следующие преобразования:


'&' (амперсанд) преобразуется в '&'

'"' (двойная кавычка) преобразуется в '"' when ENT_NOQUOTES is not set.

''' (одиночная кавычка) преобразуется в ''' только в режиме ENT_QUOTES.

'<' (знак "меньше чем") преобразуется в '&lt;'

'>' (знак "больше чем") преобразуется в '&gt;'

   
 
 автор: Thrasher   (17.01.2007 в 15:55)   письмо автору
 
   для: golovdinov   (17.01.2007 в 15:32)
 

>То есть как я понимаю, если перед вставкой в БД обработать переменную только функцией htmspesialchars() , то это может быть опасно?
Обрабатывать htmlspecialchars( ) перед вставкой в базу данных не нужно, этой функцией обрабатываешь при выводе из БД.

   
 
 автор: Sergey89   (17.01.2007 в 15:35)   письмо автору
 
   для: golovdinov   (17.01.2007 в 15:32)
 

Вобще да. addslashes экранирует: \, ', ", NUL байт

   
 
 автор: golovdinov   (17.01.2007 в 15:32)   письмо автору
 
   для: Sergey89   (17.01.2007 в 14:28)
 

То есть как я понимаю, если перед вставкой в БД обработать переменную только функцией htmspesialchars() , то это может быть опасно?

   
 
 автор: Sergey89   (17.01.2007 в 14:28)   письмо автору
 
   для: smorodin   (17.01.2007 в 14:26)
 

addslashes нужен только для вставки в БД.

   

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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