또 다른 두뇌 티저.아주 이상한 아포스트로피 MySQL PHP 오류
이것은 탈출과 살균에 관한 모든 것을 알고 있으므로 평소와 다르지 않습니다. "그러나 아포스트로피는 내 질문을 깨고 있습니다.
"Assassin 's"및 "Babe 's"와 같은 이름을 가진 많은 많은 것들이 "Assassin \"s "및"Babe \ "s로 끝나며 복구는 좋지만 텍스트 검색은 ... 아픈.
LIKE "% Babe \ 's %"에는 결과가 없으며 "% Babe \\'s"에 결과가 없으며 "% Babe \ 's"에 결과가 없습니다.
하지만 서버에 직접 연결하면 결과가 모두 생성됩니다.
즉, 완전히 편집되지 않은 SAME 쿼리는 MySQL 엔진에서 직접 작동하지만 php의 mysql api를 통해 전송되면 일치하는 결과가 산출되지 않습니다.
어떤 아이디어가 발생할 수 있습니까? (I는 문자 집합 문제가, 슬래시 등의 100 배 양을 확인했다 "
많은 많은 많은 많은 감사를 사전에
이편집 :?.
나는 더 이상 자신을 생각한다 명확 :
"SELECT title FROM games WHERE title LIKE "%assassin\\\'s%";
(SQL은 아포스트로피 보관 하였다 슬래시로 바뀝니다 슬래시 중 하나를 탈출해야하기 때문에 우리는이 예에서 "어쌔신 \ '의 신조"를 찾고 이후부터)
EDIT2 : 우린 우린 겨우 먹었어. 빨간 불량은 빈약 한 위생 처리로 인해 실제 DB에서 탈출 한 것으로 인해 발생합니다. 현재 db 및 입력 메소드를 정리하는 중입니다.
edit3 : 마술 따옴표가 어떻게 든 위에 있던 것처럼 보인다 ... 나는 꺼 졌다고 맹세한다. 그러나 그것은 그저 그런 것이 아닙니다. 이 사이트의 DB 랩퍼에는 클린 이벤트가 있으며 문제를 일으키는 사전 클리닝이 있습니다. 즉 이제 고정 된 지금은 (희망)이 DB를 정화하는 스크립트를 ... 실행 해요
수정? – Rwky
mysql_query() php의 표준입니다. – Dorjan