проблема с вставкой косой черты в таблицу MySQL - PullRequest
2 голосов
/ 22 февраля 2011

У меня проблема со вставкой строки "AM / PM" в мою таблицу MySQL

$timeFormat = mysql_real_escape_string($_POST['timeFormat']);

$sql="
UPDATE profiles
SET firstName = '$firstName', lastName = '$lastName', language = '$language', timeFormat = '$timeFormat'
WHERE profileId = '$profileId'
";
mysql_query($sql) or die('Error: '.mysql_error());

Нет ошибки, но в таблице отображается только AM / ??

Edit:

Когда я повторяю $ sql, я получаю:

UPDATE profiles SET firstName = 'Johan', lastName = 'Lund', language = 'English', timeFormat = 'AM/PM' WHERE profileId = '27'

И да, я очень долго искал в Интернете, прежде чем задавать этот вопрос. Вероятно, если у вас есть какая-либо ссылка от Stackoverflow. Я уже упустил это из виду.

Ответы [ 3 ]

1 голос
/ 22 февраля 2011

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

0 голосов
/ 22 февраля 2011

Проверьте ваш тип данных в базе данных. Если это Varchar (3), то MySQL усекает ваши данные.

0 голосов
/ 22 февраля 2011

Похоже, что слеш делает какой-то тип побега при вставке. Я предполагаю, что ваш php-интерпретатор интерпретирует его как «вредоносный».

Запустите это:

if(get_magic_quotes_gpc())
echo "Magic quotes are enabled";
else
echo "Magic quotes are disabled";

Дайте мне знать результат.

...