2013-08-21 5 views
0

큰 따옴표가있는 문자열이 있습니다. 즉 "this is text"입니다. 검색 만하면 결과가 표시되지 않습니다. 따옴표없이 따옴표없이 모두 문자열을 검색하고 싶습니다. 쿼리는 무엇입니까?PHP mysql에서 따옴표없이 따옴표없이 검색

function template($val) 
{ 

    $Qry11=Database::Read("SELECT subcategory.*,C_Name,description FROM subcategory JOIN category ON subcategory.C_id=category.C_id JOIN product_description ON subcategory.S_id = product_description.S_id WHERE S_Name LIKE '%$val%' OR C_Name LIKE '%$val%' group by subcategory.S_id"); 

    $List11 = Array();  
    $thisObjectName11 = get_class($this); 
    while($arr = Database::Reader($Qry11)) 
    { 
     $data = new $thisObjectName11();       

     $data->temp_Id = $arr[S_id]; 

     $data->C_Name = $arr[description]; 

     $data->Nm = $arr[C_Name]; 

     $data->S_Name = $arr[S_Name]; 

     $List11[] = $data; 
    } 
    return $List11; 

} 
+1

당신은 우리 쿼리 보여줄 수 ... 직접 같은 값을 검색 할 수 있습니다? –

+0

que plz see에 내 코드를 추가합니다. – Lucky

+1

쿼리에서 \ "와 같은 따옴표를 이스케이프 처리해 보셨습니까? – Tommassiov

답변

0

검색어에 변수를 사용하십시오. 내가 잘 사용하는 백 슬래시는 따옴표 탈출하는 것을 가지고있는 경우

$var = '"this is text"'; 
$var = mysql_real_escape_string($var); 
0

: 당신의 상태는 다음과 같이 인용 싱글 인 경우

WHERE S_Name LIKE '%\"$val\"%' 
0

을 ... 당신은 하나의 검색하려면 다음

WHERE S_Name LIKE '%$val%'

$ val과 같은 인용 부호 (').

$val = "some'some";
그런 다음 일회성 작은 따옴표를 두 배로 바꾸고 ('to' ') 검색이 제대로 작동합니다. 그렇지 않으면 모두
WHERE S_Name LIKE '%some''some%'

WHERE S_Name LIKE '%some"some%'

그래서 당신이 PHP에있는 슬래시를 요구하지 않는 은 ...

관련 문제