"데이터베이스의 열"인 "t1.address_city"가있는 행을 반환하기 위해 데이터베이스에 대한 where 쿼리를 작성해야하는 응용 프로그램과 함께 작업하고 있습니다. 배열의 모든 위치와 같습니다. 나는 이것을 하나의 큰 문자열로 만들기 위해 implode()를 사용해야한다는 것을 이해한다. 그러나 이것은 어떤 행도 반환하지 않는다. 아마도 큰 문자열과 일치하는 행을 찾고 있기 때문이다. 목록입니다). 코드 :긴 문자열과 함께 MySQL "in"절 사용
$_GET["places"]
이 같은 것을 포함이 :
["madrid", "lisbon", "london", "paris", "new york"]
배열 이름, $ 장소, IN ('$places')
처럼 where 절에 투입 될 때, 나는 더 행을 얻을. 여기에 다른 비슷한 질문에 대한 조언을 따라 배열을 함몰하여 "madrid, lisbon, london, paris, new york"
처럼 표시 한 다음 IN ('$implodedplaces')
과 같이 내포 된 변수를 사용하지만 앞에서 언급했듯이 모든 행을 찾지 못합니다.
따옴표 (IN ('madrid','lisbon','london')
)로 각 장소 이름을 입력하면 완벽하게 작동하지만, 사용자가 조작하므로 $_GET["places"]
을 사용하려면 IN 절이 필요합니다. $_GET["places"]
의 모든 값을 쉼표로 구분 된 문자열로 입력 할 수 있습니까?
도움이 되었으면 도움이됩니다. 제 설명이 훌륭하지 않은 경우 언제든지 질문 할 수 있습니다.
원하는 모든 소리는 포함 된 작은 따옴표 문자를 두 번 올리거나 작은 따옴표로 큰 따옴표를 대체하고 대괄호를 버리십시오. –
Mysql은 IN ("madrid", "lisbon", "london")도 허용하므로 대괄호를 제거하면됩니다. –
대괄호가 아닙니다 ... 배열입니다. –