2010-05-11 2 views
0

Я использую rawurlencode($url_variable) при переходе к скрипту. , когда я получаю переменную в скрипте, перед передачей этой переменной в mysql, я делал mysql_real_escape_string. Теперь проблема в том, как, когда есть переменная, какПроблема с rawurl encode

$url_variable = "Off-St.Mark's-Road" ... после того, как я бы mysql_real_escape_string он стал slike

Off-St.Mark \\ 's-роуд.

, который создает проблемы в MySQL Query ...

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

+0

вы можете быть более точным о проблеме это создает в вашем MySQL Query? – vicatcu

+0

Off-St.Mark \\ 's-Road в запросе создавал problem.it не находил правильные результаты.magic_quotes_gpc был на – Hacker

ответ

2

Похоже magic_quotes_gpc включен на вашем сервере, попробуйте следующее:

if (get_magic_quotes_gpc()) 
{ 
    $text = stripslashes($your_var); 
} 

$text = mysql_real_escape_string($text); 
+0

У меня есть небольшое сомнение ... разве rawurlencode add \, чтобы избежать кавычек? – Hacker

+0

@pradeep: Я так не думаю, скорее всего, вы включили 'magic_quotes_gpc'. – Sarfraz

+0

okie..thanks для справки ... я нашел этот скрипт ... надеюсь, что он полезен для других Функция sanitize ($ input) { if (is_array ($ input)) { foreach ($ input as $ k => $ i) { $ output [$ k] = sanitize ($ i); } } else { if (get_magic_quotes_gpc()) { $ input = stripslashes ($ input); } $ output = mysql_real_escape_string ($ input); } return $ output; } – Hacker