2016-10-01 2 views
0

나는 PHP에서 일하고 있는데 이것은 내 배열이다select 쿼리에서 문자열의 배열을 일치시키는 방법은 무엇입니까?

배열 ([0] => 새로운 [2] => 스트레스 [3] => 굴곡 앞으로 [4] => 두통)

내가

같은 경고로 PHP 측의 오류를 줄

select * 
from table_name 
where tag In(Sharp, New,Stress,Bending forward,Headache); 

그러나 쿼리 위의 태그 열의 배열 값과 일치하는 레코드를 검색하고 싶으십니까 :는 mysql_fetch_array()는 매개 변수를 기대 1 C에 주어진 소스, 문자열 : \ XAMPP \ htdocs를 \ 데모 \ abc.php 라인에 14

와 MySQL 측이

1064입니다 - 당신은 당신의 SQL 구문에 오류가 있습니다; 근처 사용할 수있는 권리 구문에 대한 귀하의 MariaDB 서버 버전에 해당하는 설명서를 확인하십시오 '앞으로, 두통) LIMIT 0, 25'라인에서이

1

+0

문자열에 대한 누락 된 따옴표 – devpro

+0

하지만 배열에 저장되는 모든 값을 일치 시키길 원합니다. – VishalPethani

+0

다음을 확인하여 답변을 얻으십시오. – devpro

답변

0

당신이 따옴표를 누락 사전에 감사하여 문자열 값.

이 :

SELECT * FROM table_name WHERE tag IN (Sharp,New,Stress,Bending forward,Headache) 

가되어야한다

SELECT * FROM table_name WHERE tag IN ('Sharp','New', 'Stress','Bending forward','Headache') 

당신은 당신의 코드 오류에 따라, implode()

$string = implode('","',$yourArray); 

$query = 'SELECT * FROM table_name WHERE tag IN ("'.$string.'")'; 

한 번 더 포인트를 사용할 수있는 것보다 배열이있는 경우 mysql_* 확장을 사용하고 있으며 PHP 7에서는 더 이상 사용되지 않으며 닫힙니다. 0123을 사용할 수 있습니다또는 PDO.

관련 문제