3일동안 안보기

정보 게시판

게시글이나 답변작성에 이렇게 하세요!

내용을 [code]소스코드[/code] 로 감싸시면 SyntaxHighlight 가 적용됩니다.

그누보드 카테고리 출력 (원하는 특정 카테고리의 조건으로 출력)

페이지 정보

profile_image
작성자 altip
댓글 0건 조회 1,250회 작성일 24-01-12 08:55

본문

원하는 특정 카테고리의 조건을 지정

하여 해당 조건에 맞는 카테고리만 출력하도록 변경해야 합니다.


아래는 PHP 코드에서 특정 카테고리만 출력하는 예시입니다. 이 예시에서는 `category_code`가 특정 값을 가지는 카테고리만 출력하도록 수정하였습니다.



</div>


<div class="item_category">

<ul>

<?php

$sql = "SELECT * FROM category WHERE use_yn = 'y' AND category_code = '특정_카테고리_코드' ORDER BY nm ASC";

$res = sql_query($sql);

while ($row = sql_fetch_array($res)) {

    ?><li><a href="?category_code=<?php echo $row["category_code"] ?>&n=<?php echo $row["number"] ?>" class="<?php if ($row["category_code"]==$category_code) echo "on"; ?>"><?php echo $row["nm"] ?>(<?php echo $row['fee_point']?>P)</a></li>

<?php } ?>

</ul>

</div>



위 코드에서 `'특정_카테고리_코드'` 부분을 원하는 특정 카테고리의 코드로 변경하면 해당 카테고리만 출력됩니다. 예를 들어, 만약 카테고리 코드가 'A'인 카테고리만 출력하고 싶다면,

 `'특정_카테고리_코드'`를 `'A'`로 변경하시면 됩니다.



특정 카테고리가 여러 개인 경우

해당하는 모든 카테고리를 출력하기 위해서는 SQL 쿼리를 수정해야 합니다. 이를 위해서는 `IN` 또는 `OR` 절을 사용하여 여러 카테고리 코드를 지정할 수 있습니다.


아래는 `IN` 절을 사용하여 여러 카테고리 코드를 지정하여 해당하는 모든 카테고리를 출력하는 예시입니다.



</div>


<div class="item_category">

<ul>

<?php

$specific_categories = array('카테고리_코드1', '카테고리_코드2', '카테고리_코드3'); // 원하는 특정 카테고리 코드들을 배열에 저장


$in_condition = "'" . implode("', '", $specific_categories) . "'"; // IN 절에 사용하기 위해 배열 요소들을 쉼표로 구분하여 문자열로 변환


$sql = "SELECT * FROM category WHERE use_yn = 'y' AND category_code IN ($in_condition) ORDER BY nm ASC";

$res = sql_query($sql);

while ($row = sql_fetch_array($res)) {

    ?><li><a href="?category_code=<?php echo $row["category_code"] ?>&n=<?php echo $row["number"] ?>" class="<?php if ($row["category_code"]==$category_code) echo "on"; ?>"><?php echo $row["nm"] ?>(<?php echo $row['fee_point']?>P)</a></li>

<?php } ?>

</ul>

</div>



랜덤한 순서로 카테고리를 가져오기 

위 코드에서 `$specific_categories` 배열에 원하는 카테고리 코드들을 추가하면 해당 카테고리들만 출력됩니다. 각 카테고리 코드는 쉼표로 구분되어 SQL 쿼리의 `IN` 절에 사용됩니다. 즉, '카테고리_코드1', '카테고리_코드2', '카테고리_코드3'와 같은 형태로 배열에 추가하면 됩니다.


카테고리를 랜덤으로 출력하려면 SQL 쿼리를 수정하여 랜덤한 순서로 카테고리를 가져오면 됩니다. 이를 위해 SQL 쿼리에서 `ORDER BY` 절을 사용하여 랜덤한 순서로 결과를 얻을 수 있습니다.


아래는 `ORDER BY RAND()`를 사용하여 카테고리를 랜덤으로 출력하는 예시입니다.


```php

</div>


<div class="item_category">

<ul>

<?php

$sql = "SELECT * FROM category WHERE use_yn = 'y' ORDER BY RAND()"; // 랜덤 순서로 카테고리 가져오기

$res = sql_query($sql);

while ($row = sql_fetch_array($res)) {

    ?><li><a href="?category_code=<?php echo $row["category_code"] ?>&n=<?php echo $row["number"] ?>" class="<?php if ($row["category_code"]==$category_code) echo "on"; ?>"><?php echo $row["nm"] ?>(<?php echo $row['fee_point']?>P)</a></li>

<?php } ?>

</ul>

</div>



카테고리를 랜덤으로 하나만 출력 

위 코드에서 `ORDER BY RAND()`를 사용하여 카테고리를 랜덤으로 출력합니다. 이렇게 하면 매번 페이지를 새로고침할 때마다 카테고리 순서가 랜덤하게 변경됩니다. 이제 웹 페이지에서 카테고리 목록을 표시할 때 마다 랜덤한 순서로 카테고리가 출력될 것입니다.


랜덤으로 하나의 카테고리만 출력하려면 SQL 쿼리를 조정하여 랜덤한 순서로 하나의 카테고리만 가져오면 됩니다. 이를 위해서는 `LIMIT` 절을 사용하여 가져올 레코드의 수를 1로 설정하면 됩니다.


아래는 `LIMIT 1`을 사용하여 랜덤으로 하나의 카테고리를 출력하는 예시입니다.



</div>


<div class="item_category">

<ul>

<?php

$sql = "SELECT * FROM category WHERE use_yn = 'y' ORDER BY RAND() LIMIT 1"; // 랜덤 순서로 하나의 카테고리 가져오기

$res = sql_query($sql);

if ($row = sql_fetch_array($res)) {

    ?><li><a href="?category_code=<?php echo $row["category_code"] ?>&n=<?php echo $row["number"] ?>" class="<?php if ($row["category_code"]==$category_code) echo "on"; ?>"><?php echo $row["nm"] ?>(<?php echo $row['fee_point']?>P)</a></li>

<?php } ?>

</ul>

</div>



위 코드에서 `ORDER BY RAND() LIMIT 1`를 사용하여 랜덤으로 하나의 카테고리만 가져오도록 설정하였습니다. 이렇게 하면 페이지를 새로고침할 때마다 랜덤하게 하나의 카테고리만 출력될 것입니다. `if ($row = sql_fetch_array($res))` 라인을 추가하여 결과가 없을 경우에는 출력하지 않도록 처리하였습니다. 이렇게 하면 카테고리가 하나도 없는 경우에도 오류가 발생하지 않고 안전하게 처리됩니다.

추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 61건 1 페이지
정보 게시판 목록
번호 제목 글쓴이 조회 추천 비추천 날짜
61
아포칼립스 04-12 0 0 355
아포칼립스 355 0 0 04-12
60
아포칼립스 04-09 0 0 312
아포칼립스 312 0 0 04-09
59
아포칼립스 04-04 0 0 339
아포칼립스 339 0 0 04-04
58
아포칼립스 04-04 0 0 378
아포칼립스 378 0 0 04-04
57
아포칼립스 03-29 0 0 397
아포칼립스 397 0 0 03-29
56
아포칼립스 03-16 0 0 8201
아포칼립스 8201 0 0 03-16
55
아포칼립스 03-16 0 0 665
아포칼립스 665 0 0 03-16
54
아포칼립스 03-16 0 0 649
아포칼립스 649 0 0 03-16
53
altip 03-14 0 0 714
altip 714 0 0 03-14
52
아포칼립스 03-12 0 0 750
아포칼립스 750 0 0 03-12
51
altip 03-10 0 0 762
altip 762 0 0 03-10
50
altip 01-14 0 0 1702
altip 1702 0 0 01-14
49
altip 02-17 0 0 994
altip 994 0 0 02-17
48
altip 02-15 1 0 7987
altip 7987 1 0 02-15
47
altip 02-15 0 0 1022
altip 1022 0 0 02-15
46
altip 02-12 0 0 1047
altip 1047 0 0 02-12
45
altip 02-11 0 0 1057
altip 1057 0 0 02-11
44
altip 02-05 0 0 1157
altip 1157 0 0 02-05
43
altip 02-03 0 0 1249
altip 1249 0 0 02-03
42
altip 01-31 0 0 1146
altip 1146 0 0 01-31

검색

회원 로그인

SNS

포인트랭킹

1 아포칼립스 11,989점
2 ghoots 5,485점
3 lime 2,940점
4 Jake 2,130점
5 지누 1,205점
6 WaveDEV 1,100점
7 김민준 1,100점
8 레오 1,100점

접속자집계

오늘
1,155
어제
737
최대
3,492
전체
130,260