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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Обработка поля из формы перед занесением в бд
 
 автор: serjinio   (12.09.2008 в 15:33)   письмо автору
 
 

Просмотрите плиз правильность обработки текстового поля перед занесением в бд


<? 
@$comment=mysql_escape_string(wordwrap(substr(strip_tags(trim($_POST['comment'])), 01000), 60"\n<br>"1));
$comment = (!get_magic_quotes_gpc()) ? mysql_escape_string($comment) : $comment;  
mysql_query ("INSERT INTO `mes`(`comment`) VALUES ('$comment')"); 



Прошу помочь исправить ошибки по безопасности

  Ответить  
 
 автор: Root   (12.09.2008 в 15:42)   письмо автору
 
   для: serjinio   (12.09.2008 в 15:33)
 

а вы сами не видите, что вы функцию mysql_escape_string() два раза для одного 'comment' используете?

  Ответить  
 
 автор: bill   (12.09.2008 в 15:45)   письмо автору
 
   для: Root   (12.09.2008 в 15:42)
 

ага. точно!

  Ответить  
 
 автор: Dimka31   (12.09.2008 в 15:46)   письмо автору
 
   для: Root   (12.09.2008 в 15:42)
 

А разве не достаточно использовать get_magic_quotes_gpc, а при выводе htmlspecialchars?

  Ответить  
 
 автор: Root   (12.09.2008 в 15:49)   письмо автору
 
   для: Dimka31   (12.09.2008 в 15:46)
 

вы знаете что такое get_magic_quotes_gpc()?

или это из рода "слышал звон..." :-)

if(get_magic_quotes_gpc()) stripslashes...
а потом mysql_escape_string()

  Ответить  
 
 автор: serjinio   (12.09.2008 в 18:00)   письмо автору
 
   для: Root   (12.09.2008 в 15:42)
 

прошу прощения скопировал не ту строчку исправил...и добавил обрезку слэш...
<?
@$comment=wordwrap(substr(strip_tags(trim($_POST['comment'])), 01000), 60"\n<br>"1); 
$comment = (!get_magic_quotes_gpc()) ? mysql_escape_string(stripslashes($comment)) : stripslashes($comment);  

mysql_query ("INSERT INTO `mes`(`comment`) VALUES ('$comment')"); 

  Ответить  
 
 автор: Root   (12.09.2008 в 18:07)   письмо автору
 
   для: serjinio   (12.09.2008 в 18:00)
 


<?
$comment 
= (get_magic_quotes_gpc()) ? mysql_escape_string(stripslashes($comment)) : mysql_escape_string($comment); 
?>

  Ответить  
 
 автор: BinLaden   (12.09.2008 в 19:17)   письмо автору
 
   для: serjinio   (12.09.2008 в 18:00)
 

> strip_tags

Надо убрать.

> "\n<br>"

А что Вы будете делать на выходе? htmlspecialchars() быстренько Ваш тег в текст приведёт.

  Ответить  
 
 автор: serjinio   (13.09.2008 в 16:39)   письмо автору
 
   для: BinLaden   (12.09.2008 в 19:17)
 

почитав внимательно http://phpfaq.ru/slashes и поэкспериментировав
<?
@$comment=wordwrap(substr(strip_tags(trim($_POST['comment'])), 01000), 60"\n"1); 
$com = (!get_magic_quotes_gpc()) ? mysql_real_escape_string($comment) : stripslashes($comment); 

mysql_query ("INSERT INTO `mes`(`comment`) VALUES ('$com')"); 

  Ответить  
Rambler's Top100
вверх

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