Помощь с запросом

avgaz

Участник
Регистрация
18 Окт 2006
Сообщения
189
Реакции
7
Здравствуйте. Имеется вот такой запрос в БД
PHP:
  $q = "UPDATE ".$config['Database']['tableprefix']."user SET password='".$cov["converge_pass_hash"]."', salt='".$cov["converge_pass_salt"]."' WHERE email='".$cov["converge_email"]."'";

Этот запрос переносит данные из обной БД в другую, но есть проблема поле converge_pass_salt имеет данные с ' из за этого возникают ошибки такого рода
PHP:
UPDATE user SET password='0798890cff6bb191914da366e24b7', salt='HZ9E'' WHERE email='malde@hitv.ru'
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'malde@hitv.ru'' at line 1
Посоветуйте как быть??
 
PHP:
htmlspecialchars($cov["converge_pass_salt"],1)
 
PHP:
# поменять
$cov["converge_pass_hash"]
# на
mysql_real_escape_string($cov["converge_pass_salt"])
 
$q = "UPDATE ".$config['Database']['tableprefix']."user SET password=`".$cov["converge_pass_hash"]."`, salt=`".$cov["converge_pass_salt"]."` WHERE email=`".$cov["converge_email"]."`";
 
$q = "UPDATE ".$config['Database']['tableprefix']."user SET password=`".$cov["converge_pass_hash"]."`, salt=`".$cov["converge_pass_salt"]."` WHERE email=`".$cov["converge_email"]."`";
ага :) а что делать если в salt какого нить пароля попадет символ ` :) ?
 
$q = "UPDATE ".$config['Database']['tableprefix']."user SET password=`".$cov["converge_pass_hash"]."`, salt=`".$cov["converge_pass_salt"]."` WHERE email=`".$cov["converge_email"]."`";
Пробовал я различные комбинации везде разные грабли
mysql_real_escape_string
Помогло спасибо.
 
интересно чем вы salt генерите что у Вас такие (`) символы попадаются?
 
Назад
Сверху