날짜 관련 문의합니다.
본문
글쓰기란에 아래처럼 있습니다. 날짜인데 몇일 전에 글 작성했나 입니다.
1일 ~ 30 까지 나오게 했습니다.
$sql = " select wr_1 from $write_table where mb_id = '$member[mb_id]' order by wr_1 desc limit 1 ";
$result = sql_query($sql);
while ($row = sql_fetch_array($result)){
//$last_write_date라는 변수에 꺼내온 날짜를 담아둡니다.
$last_write_date = $row[wr_1];
}
//$last_write_day변수에 날짜데이터를 변환해서 넣어둡니다.
$last_write_day = date("Y-m-d",strtotime($last_write_date));
//$last_write_day변수에 들어있는 날짜데이터를 - 를 기준으로 쪼개서 배열변수로 변환합니다.
$last_write_day = explode("-",$last_write_day);
//마지막 글 쓴 일로부터 $limit_days만큼 지난 날짜를 얻어 $limit_day 함수에 넣어둡니다.
$limit_day = date("y-m-d",mktime(0,0,0,$last_write_day[1],$last_write_day[2]+$limit_date,$last_write_day[0]));
//$today 변수에 오늘 날짜를 변환해서 넣어둡니다.
$today = date("y-m-d",time());
$day_count = floor((G5_SERVER_TIME-strtotime($limit_day))/86400);
echo $day_count;
----------생략----------
<option value="16" <? if ($day_count == 16) { echo("selected=selected"); } ?>>16일</option>
<option value="15" <? if ($day_count == 15) { echo("selected=selected"); } ?>>15일</option>
<option value="14" <? if ($day_count == 14) { echo("selected=selected"); } ?>>14일</option>
<option value="13" <? if ($day_count == 13) { echo("selected=selected"); } ?>>13일</option>
---------생략----------
15일 전에 글 작성하고 오늘 글 작성하면
전 글작성 일 "15" 일전 이런식으로 나옵니다.
근데 처음 작성하면 16363 이렇게 나옵니다.
처음 작성하면 처음 이라고 나오게 하고 오늘 두번이상 작성하면 "오늘" 이라고 표시하고 32일 이상이면 "표시안함" 이라고 나오게 했으면합니다.
가능할런지요
답변 1
$sql = " select wr_1 from $write_table where mb_id = '$member[mb_id]' order by wr_1 desc limit 1 ";
$result = sql_query($sql);
while ($row = sql_fetch_array($result)){
//$last_write_date라는 변수에 꺼내온 날짜를 담아둡니다.
$last_write_date = $row[wr_1];
}
if (!$last_write_date) {
$day_count="처음";
}else if (date("y-m-d") == date("Y-m-d",strtotime($last_write_date)) {
$day_count="오늘";
}else if (date("y-m-d", time()-2764800) >= date("Y-m-d",strtotime($last_write_date)) {
$day_count="표시안함";
}else{
//$last_write_day변수에 날짜데이터를 변환해서 넣어둡니다.
$last_write_day = date("Y-m-d",strtotime($last_write_date));
//$last_write_day변수에 들어있는 날짜데이터를 - 를 기준으로 쪼개서 배열변수로 변환합니다.
$last_write_day = explode("-",$last_write_day);
//마지막 글 쓴 일로부터 $limit_days만큼 지난 날짜를 얻어 $limit_day 함수에 넣어둡니다.
$limit_day = date("y-m-d",mktime(0,0,0,$last_write_day[1],$last_write_day[2]+$limit_date,$last_write_day[0]));
//$today 변수에 오늘 날짜를 변환해서 넣어둡니다.
$today = date("y-m-d",time());
$day_count = floor((G5_SERVER_TIME-strtotime($limit_day))/86400);
}
cho $day_count;
이렇게 해 보세요~~ ^^