블로그를 만들고 싶습니다. 두 개의 테이블을 만듭니다.MySQL LIKE가 잘못된 결과를 나타냅니다.
ID Name of Category
저는 기사 테이블을 만듭니다.
ID CATEGORY_ID ARTICLE
각 기사를 여러 범주에 추가하고 ID를 쉼표로 구분 된 값으로 CATEGORY_ID 필드에 저장합니다. 즉
ID CATEGORY_ID Article
1 1,2,3 xyz
2 1,5 ghjy..............
3 2,4,6 hgyr..............
이제 카테고리 페이지에 기사를 게시하고 싶습니다.
$QUERY = "SELECT * FROM article_table WHERE category_id like '%category_id%' ORDER BY id DESC";
위의 쿼리에서 모두 똑같은 두 가지 카테고리가있을 때까지 모두 양호합니다. 카테고리 20,21,22,23 등의 모든 기사도 카테고리 페이지 2에 표시됩니다. 어떻게 피합니까? '% - %'이 문제의 원인입니다.
내 질문 : 동적으로 다른 페이지에 다른 카테고리의 기사를 표시하고 싶습니다.
아무도 도와 줄 수 있습니까 ??? 당신이 MySQL을 사용하는 경우
mysql_ * 또는 PDO 또는 mysqli를 사용하고 있습니까? –
article_category 연결 테이블을 갖도록 데이터 구조를 수정하십시오. 목록을 쉼표로 구분 된 값으로 저장하지 마십시오. –
대신에 정규식을 사용하십시오. – vidyadhar