2010-05-10 7 views
0

나는 다음과 같은 구조의 테이블을 가지고 :PHP MYSQL 간단한 검색 ISSUE

id int(11), name varchar(250)

나는 다음과 같은 가치가있는 particluar 기록을 찾기 위해 노력하고 때 테이블의 레코드를 많이 가지고 있지만 이름 필드 : Lorem ipsum d \ 'olor sit amet 쿼리는 단순히 빈 레코드 집합을 반환합니다. 내 질문은 간단합니다 때이 이상한 행동을 알아낼 수 없다는하고, 다음과 같이 name = '로렘 입숨 d 개 \'olor '

을 AMET 앉아 당신의 도움 바랍니다 감사하겠습니다

SELECT * FROM slot_games

! 미리 감사드립니다.

답변

0

name 필드 전에 mysql_real_escape_string (또는 addslashes) 기능을 사용하십시오.

예 :

$name = "Lorem ipsum d'olor sit amet"; 
"SELECT * FROM slot_games WHERE name='$name'"; 

이 기본적으로 ' 문자를 탈출하고 당신은 문제가있는 이유는 아마.

+0

를 해결하는 방법은 두 가지가 있습니다. 그래서 당신이 제안하는 것은 이미 끝났고 여전히 작동하지 않습니다. ( – Kunal

0

당신이 그것을 앞에 백 슬래시를 추가하여 이미 이스케이프 작은 따옴표 게시 한 쿼리를 통지하는 경우이 문제를

 
1. use mysql_real_escape_string(); // used in the Query 
2. addslashes();     // used in php before query execution