2009-08-18 3 views
1

빠른 질문 : like 절에 포함 된 변수를 mysqli_escape_string하려면 어떻게합니까?mysql like 구문

"SELECT * FROM table WHERE name LIKE '%". %s . "%'"  

또는

"SELECT * FROM table WHERE name like '%"."%s"."%'" 

가 작동하지 않습니다.

감사합니다.

+1

또는, 당신은 당신이 매개 변수를 사용해야 완전히 탈출을 처리하는 것을 피하기하려면 : 이름 LIKE 테이블 SELECT * FROM? 여기서 첫 번째 매개 변수는 값 "% $ search %"또는 이와 유사한 값을가집니다. –

답변

5
$value = mysql_real_escape_string($_POST["terms"]); 
$query = "SELECT * FROM table WHERE name LIKE '%".$value."%'"; 

또는이 같은 sprintf와 함께이 acheive 수 :

$query = sprintf("SELECT * FROM table WHERE name LIKE '%s'", "%".$value."%"); 
+0

흠 나는 진짜 빨리 확인해 보도록하겠습니다. sprintf ("SELECT", mysqli_escape_string ($ link, $ var))에 익숙합니다. – Dirk

+0

귀하의 방법을 사용하여 작동하도록 문제를 해결했지만 작동하지 못했습니다 sprintf – Dirk

+0

@Michael - sprintf의 업데이트 된 예제를 사용해보십시오. – Sampson