mysql에서 검색과 관련하여 몇 가지 문제가 있습니다. 다음은 내 쿼리입니다.검색은 LIKE를 사용하는 mysql 질의에 행을 반환하지 않고 ""를 갖는 값을 반환합니다.
SELECT * FROM table WHERE name LIKE "%admin\'s%";
내가이 쿼리를 실행할 때 제로 데이터를 반환합니다.
실제로 나는 "admin \ 's"이 (가) db에 저장되어 있습니다. 이 "\"는 SQL 삽입을 방지하기위한 것입니다. 나는 mysql_real_escape_string
을 사용하여 SQL 주입을 막았다.
하지만 내 변수에 세 번 addslashes를 사용하면 작동합니다.
그래서 내 아래 쿼리가 작동합니다.
SELECT * FROM table WHERE name LIKE "%admin\\\\\\\'s%";
위의 쿼리는 admin과 같은 이름의 데이터를 반환합니다.
나는 어디가 잘못되었는지 알지 못합니다.
아니요. 나는 magic_quote를 활성화하지 않았습니다. SQL 주입을 막기 위해 mysql_real_escape_string을 사용하고 있습니다. 뭐가 잘못 되었나요? – Avinash
아무것도 잘못 ..하지만 mysql 데이터베이스의 데이터는 슬래시로 저장해야합니다 .. 도주했다하더라도. 이스 케이 핑은 쿼리가 작동하기위한 것입니다. –