Как проверить Апостроф с предложением where, используя mysql - PullRequest
1 голос
/ 16 марта 2012

Как апостроф (') используется с предложением WHERE в MySQL?

Я уже использовал mysql_real_escape_string для очистки ввода.

Вот снимок экрана с моим запросом mySQL и базой данных

SELECT * FROM players WHERE `name` = 'Amar'e Stoudemire'

enter image description here

Выполнение этого запроса приводит к следующей ошибке:

enter image description here

Есть идеи почему?

Ответы [ 3 ]

5 голосов
/ 16 марта 2012
SELECT * FROM players WHERE `name` = 'Amar\\''e Stoudemire'

Если содержимое вашей ячейки \', вам необходимо экранировать оба символа:

\ -> \\
' -> ''

1 голос
/ 16 марта 2012

Я нашел свой ответ спасибо за juergen d, который помог мне решить этот вопрос

<?php 
$name = "Amar'e Stoudemire";
?>

Это строка с Апостроф и если вы хотите проверить эту строку в MySQL Query с предложением где, так вот решение

<?php 
$name = addslashes(addslashes($name));
/*Amar\\\'e Stoudemire*/
?> 

SELECT * FROM players WHERE `name` = "'.$name.'"
0 голосов
/ 16 марта 2012

Одиночные кавычки могут быть экранированы сами по себе в MySQL - например, так:

SELECT * FROM players WHERE `name` = 'Amar\''e Stoudemire'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...