проблема с ковычками

vrazbros

Новичок
проблема с кавычками

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

перед воодом данных в бд

$name = str_replace("'", "`", $_POST['name']);
$name = mysql_real_escape_string($name);

php:

$image = "<a href='#' tip=\"$par[name]\" onclick=\"show_img('".$par['big']."',".$size[0].",".$size[1].",'false','".$par['name']."'); return false; \" />$img_src</a>";

если в качестве $name ввести (куранты) все нормально, браузер генерит:


<a onclick="show_img('files/20080305211706.jpg',730,545,'true','wergwer'); return false; " href="#"><img vspace="3" border="0" align="left" src="../../files/20080305211706_s.jpg"/></a>

а если в качестве $name ввести (куранты "Автогаз") начинаются проблемы:
<a false;="" return="" );="" ddd="" onclick="show_img('files/20080308202409.jpg',730,545,'true','sfh " href="#"><img vspace="3" border="0" align="left" src="../../files/20080308202409_s.jpg"/></a>
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
[telepat_mode]
Экранируй их для твоего Javascript-а
 

vrazbros

Новичок
я понимаю что надо заэкранить этот ".$par['name']."
только что то никак не соображу как.
 

dimagolov

Новичок
vrazbros, кто на ком стоял? (с) Собачье сердце.
это я про то, что есть минимум 2 не особо связанные с собой операции: 1. запись некого значения, полученного от пользователя в БД и 2. чтение его из базы и использовании при генерации html или js-а.

так в чем проблема?
 

vrazbros

Новичок
проблема в том что не совсем понятно где это лучше сделать (в 1 или 2 варианте), а главное как ?

addslashes() ну да добавило слеши, только толку мало.

ввел куранты "автогаз" прием

получил:
<a false;="" return="" );="" прием="" автогаз\="" onclick="show_img('files/20080309103416.jpg',730,545,'true','курвнты \" href="#"><img vspace="3" border="0" align="left" src="../../files/20080309103416_s.jpg"/></a>

-~{}~ 09.03.08 12:05:

хех, опять пришлось все самому разбирать, короче решилось использованием htmlspecialchars()
 
Сверху