위

게시판 목록에서 원하는 데이터만 출력이 가능하게..

· 2016-01-14 (목) 12:17:45 · 2591

 

그누보드는 코어를 건드리지 않으면 목록화면에 조건절을 넣기가 쉽지가 않습니다.

 

sca 와 stx 값을 이용해서 하면 되지만 이 파라미터값을 전달해주지 않으면 조건절은 어렵습니다.

 

가끔 다른 스킨을 보다보면 list.skin.php 파일에 list.php​ 파일의 동일한 코드를 한번더 적용해서 조건절을 입히는것을 보았습니다.

 

너무나 자원을 낭비하는 코드가 아닐수 없죠..

 

코어를 건드리지 않고 조건절을 넣기위해서 한페이지에 똑같은 일을 두번이나 하게 만들다니...

 

그러나 나는 코어에 한줄 코드만 추가해서 조건절을 만들어 보았습니다.

 

 

 

 

 

목록파일코어 /bbs/list.php

 

[code] 

if ($sca || $stx) {

    $sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_order} limit {$from_record}, $page_rows ";

} else {

    $sql = " select * from {$write_table} where wr_is_comment = 0 ";

    if(!empty($notice_array))

        $sql .= " and wr_id not in (".implode(', ', $notice_array).") ";

    $sql .= " {$sql_order} limit {$from_record}, $page_rows ";

}


@include_once($board_skin_path.'/list.query.php'); // wetoz : 조건절 커스터마이징.

[/code]

 

@include_once($board_skin_path.'/list.query.php'); 를 한줄 추가하였습니다.

 

 

 

 

 

 

스킨파일에 추가 /skin/board/스킨/list.query.php

 

 

[code]

<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가


$wz_sql_search = "";

if ($sql_search) { 

    $wz_sql_search .= " and "; 

} 


$wz_sql_search .= " 원하는 조건절 ";


$sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE {$sql_search} {$wz_sql_search} ";

$row = sql_fetch($sql);

$total_count = $row['cnt'];


$total_page  = ceil($total_count / $page_rows);  // 전체 페이지 계산


if ($sca || $stx) {

    $sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$wz_sql_search} {$sql_order} limit {$from_record}, $page_rows ";

} else {

    $sql = " select * from {$write_table} where wr_is_comment = 0 and {$wz_sql_search} ";

    if(!empty($notice_array))

        $sql .= " and wr_id not in (".implode(', ', $notice_array).") ";

    $sql .= " {$sql_order} limit {$from_record}, $page_rows ";

}

?>


[/code] 

 

 

 

비록 코어를 수정했지만 간단한 한줄의 추가로 쓸데없이 쿼리를 두번식 돌리지도 않으며 게시판의 스킨에서 조건절을 적용할수 있습니다.

 

 

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
16-06-11 조회 2,985
16-05-12 조회 2,976
16-04-12 조회 3,142
16-02-03 조회 2,914
16-02-03 조회 2,970
16-02-02 조회 3,214
16-02-01 조회 2,638
16-02-01 조회 2,624
16-01-31 조회 2,658
16-01-31 조회 2,664
16-01-31 조회 2,671
16-01-30 조회 2,664
16-01-29 조회 2,652
16-01-29 조회 2,546
16-01-29 조회 2,538
16-01-28 조회 2,489
16-01-28 조회 2,401
16-01-27 조회 2,541
16-01-27 조회 2,540
16-01-26 조회 2,508
16-01-25 조회 2,588
16-01-25 조회 2,463
16-01-24 조회 2,465
16-01-24 조회 2,468
16-01-24 조회 2,379
16-01-23 조회 2,432
16-01-23 조회 2,456
16-01-23 조회 2,428
16-01-22 조회 2,608
16-01-21 조회 2,675
16-01-21 조회 2,539
16-01-21 조회 2,519
16-01-20 조회 2,458
16-01-20 조회 2,410
16-01-20 조회 2,414
16-01-19 조회 2,465
16-01-19 조회 2,513
16-01-18 조회 2,499
16-01-16 조회 2,430
16-01-16 조회 2,358
16-01-16 조회 2,425
16-01-15 조회 2,584
16-01-15 조회 2,558
16-01-15 조회 2,509
16-01-15 조회 2,448
16-01-14 조회 2,481
16-01-14 조회 2,718
16-01-14 조회 2,529
16-01-13 조회 2,539
16-01-13 조회 2,480
16-01-13 조회 2,453
16-01-12 조회 2,601
16-01-11 조회 2,693
16-01-11 조회 2,588
16-01-11 조회 2,399
16-01-02 조회 2,844
15-12-31 조회 2,558
15-12-27 조회 2,648
15-12-27 조회 2,551
15-12-27 조회 2,610
15-12-26 조회 2,571
15-12-26 조회 2,641
15-12-26 조회 2,657
15-12-25 조회 3,345
15-12-25 조회 2,535
15-12-25 조회 2,540
15-12-25 조회 2,494
15-12-24 조회 3,034
15-12-23 조회 2,494
15-12-23 조회 2,627
15-12-23 조회 2,574
15-12-22 조회 2,615
15-12-22 조회 2,597
15-12-22 조회 2,502
15-12-21 조회 2,540
15-12-21 조회 2,573
15-12-21 조회 2,543
15-12-20 조회 2,589
15-12-20 조회 2,752
15-12-20 조회 2,530
15-12-19 조회 2,613
15-12-19 조회 2,603
15-12-19 조회 2,609
15-12-18 조회 2,910
15-12-18 조회 2,582
15-12-18 조회 2,573
15-12-18 조회 2,544
15-12-17 조회 2,534
15-12-17 조회 2,545
15-12-17 조회 2,509
15-12-16 조회 2,526
15-12-16 조회 2,561
15-12-16 조회 2,504
15-12-15 조회 2,512
15-12-15 조회 2,511
15-12-15 조회 2,505
15-12-14 조회 2,575
15-12-14 조회 2,661
15-12-14 조회 2,487
15-12-13 조회 2,450