본인은이 질문에 대해 모호한 제목을 사용 했으므로 깊은 지식의 부족) 이것이 진정한 문제인지 아닌지를 결정합니다.Mysql : 쿼리에서 "WHERE ... IN", "ORDER BY ..."및 "LIMIT"오류가 발생할 수 있습니다.
$query_page = mysql_query($select_prod);
$product_total = mysql_num_rows($query_page);
$page_rows = 4;
$last = ceil($product_total/$page_rows);
if ($page < 1) {
$page = 1;
} elseif ($page > $last) {
$page = $last;
}
$limit = 'limit ' .($page - 1) * $page_rows .',' .$page_rows;
그리고 : 나는 매김 물건을 정의하는 경우 여기 그 후
$select_prod = "SELECT * FROM product WHERE product_id IN ($some_array)";
: 내 제품을 선택 곳
다음은 다음과 같습니다
것은의 짧은 설명과 함께 다음 시작하자 렌더링을 준비하는 곳
$page_query = mysql_query($select_prod . $limit);
$results = array();
while ($array_filter = mysql_fetch_array($page_query)) {
$results[] = $array_filter;
}
이 시점까지는 모든 것이 쉽게 흘러 나오고 원했던대로 제품 목록이 나오지만 임의 순서로 표시됩니다.
는이 같은 첫 번째 쿼리의 말에 "가격 ASC BY ORDER"를 포함하는 것을 시도했다 :
$select_prod = "SELECT * FROM product WHERE product_id IN ($some_array) ORDER BY price ASC";
하지만 이상한 이유로 오류가있는 제품을 나열 실패
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given...
나는 문제가 될 수있는 곳을 찾기 위해 이미 몇 시간을 보냈으며,이 포럼은 나를위한 마지막 시도로 보인다.
글쎄요, 전체 쿼리를 인쇄 해달라고 말하면 +1이 붙었습니다. –
한계가 있기 전의 공간. 위대한 관찰. 그래서 구문에 관한 것이 었습니다. 감사합니다 고든! – Auto4x4Motor