Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2010, 23:58   #1
Roms
Пользователь
 
Регистрация: 30.06.2008
Сообщений: 10
По умолчанию Экранирование символов

Как лучше экранировать символы (кавычки, слэши) перед занесением их в базу данных?
mysql_escape_string, htmlspecialchars или что-то другое? Может стоит использовать в связки несколько функций? Или может это всё лишнее?
Roms вне форума Ответить с цитированием
Старый 09.05.2010, 14:27   #2
Rifler
Пользователь
 
Регистрация: 15.12.2007
Сообщений: 44
По умолчанию

Добрый день.
Есть строка - профессор кафедры "Автоматизация производства"
В базу она заносится без проблем благодаря addslashes. А вот при извлечении из базы и попытки записи в Input возникает проблема:
Код HTML:
<input type="text" value="<?=$data['info']?>">
Выводится только строка - профессор кафедры(из-за кавычек)
Смотрел подобный моему сайт через firebug - все нормально, пишет так:
Код HTML:
<input type="text" value="профессор кафедры "Автоматизация производства"">
И отображается все нормально. Как так сделать?

зы: на этом форуме в тегах <хтмл></хтмл> эту строку тож неправильно парсит
ззы: понял, эт функция htmlspecialchar();

Последний раз редактировалось Rifler; 09.05.2010 в 15:49.
Rifler вне форума Ответить с цитированием
Старый 15.05.2010, 13:09   #3
bracomp
Пользователь
 
Регистрация: 25.10.2009
Сообщений: 23
По умолчанию

Проходили, перед записью в бд попробуй эту функцию
Код HTML:
function insert_qu($string){
	$tok = strtok($string, "'");
	$k=0;
	while ($tok !== false) {
   		$w[$k] =$tok;
    		$tok = strtok("'");
    		$k++;
	}
	if ($k>0)
	{ $s='';
	  for ($i=0;$i<$k;$i++)
	  { $s.=$w[$i];
	     if ($i<$k-1) $s.="''";
	   }	
	   return $s;
	} else {return $string;}
	
}
====
она для апострофа - '

Последний раз редактировалось SkyM@n; 15.05.2010 в 23:18.
bracomp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
замена символов sveta11115 Общие вопросы C/C++ 11 21.03.2010 10:56
c++ замена символов sveta11115 Помощь студентам 0 21.03.2010 00:09
стек символов zhenya.ya Помощь студентам 1 19.03.2010 09:26
Экранирование кавычек в Delphi kiber_punk Общие вопросы Delphi 7 29.12.2008 19:28
экранирование кавычек в C (аналог magic_quotes)? fis Общие вопросы C/C++ 1 26.06.2008 19:11