채택완료

오늘 날짜 게시물 갯수 구하기

안녕하세요

아래 소스를 이용해서

특정 게시판의 게시물 수를 구하고 잇습니다.

 

여기에서 전체 게시물이 아닌

오늘 날짜에 등록된 게시물만 구하고 싶어서요

 

Copy
<?php 
$bo_table = "test";
$write_table = $g5['write_prefix'] . $bo_table;
$sql_common = " from {$write_table} ";
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
?>

 

알고계신 고수님들의 도움 부탁드립니다. ㅠ

 

|

답변 4개

채택된 답변
+20 포인트

Copy
<?php 
$bo_table = "test";
$write_table = $g5['write_prefix'] . $bo_table;

// $sql_common = " from {$write_table} ";
$sql_common = " from {$write_table} where wr_datetime >= '" . G5_TIME_YMD . " 00:00:00' ";
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
?>

Copy
// 게시물 작성 시간의 컬럼은 'wr_datetime'라고 가정
$bo_table = "test";
$write_table = $g5['write_prefix'] . $bo_table;

// 오늘 날짜의 시작과 끝을 계산
$today_start = date('Y-m-d 00:00:00');
$today_end = date('Y-m-d 23:59:59');

// 어제 날짜의 시작과 끝을 계산
$yesterday_start = date('Y-m-d 00:00:00', strtotime('-1 day'));
$yesterday_end = date('Y-m-d 23:59:59', strtotime('-1 day'));

// SQL 쿼리를 작성하여 오늘과 어제 게시물 수를 구함
$sql_today = "SELECT COUNT(*) as cnt FROM {$write_table} WHERE wr_datetime BETWEEN '{$today_start}' AND '{$today_end}'";
$sql_yesterday = "SELECT COUNT(*) as cnt FROM {$write_table} WHERE wr_datetime BETWEEN '{$yesterday_start}' AND '{$yesterday_end}'";

// SQL 쿼리 실행
$row_today = sql_fetch($sql_today);
$row_yesterday = sql_fetch($sql_yesterday);

// 결과 출력
echo "오늘 게시물 수: " . $row_today['cnt'] . "<br>";
echo "어제 게시물 수: " . $row_yesterday['cnt'];

 

이런식으로 오늘과 어제도 구할 수 있습니다.

다음과 같은 방법도 있으니 참고해 보세요

Copy
<?php 
$bo_table = "test";
$write_table = $g5['write_prefix'] . $bo_table;

// 오늘 날짜를 구합니다.
$today = date("Y-m-d");

// SQL 쿼리를 수정하여 오늘 날짜에 등록된 게시물만 가져옵니다.
$sql_common = " from {$write_table} where date(write_datetime) = '{$today}'";
$sql = "select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
?>
Copy
<?php 
$bo_table = "test";
$write_table = $g5['write_prefix'] . $bo_table;
$sql_common = " from {$write_table} where wr_datetime  like '" . Date("Y-m-d",time()) . "%' ";
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
?>

like 를 사용해서 오늘 날짜를 검색하시면 됩니다.

답변을 작성하려면 로그인이 필요합니다.