날짜 관련 문의합니다.

날짜 관련 문의합니다.

QA

날짜 관련 문의합니다.

본문

글쓰기란에 아래처럼 있습니다. 날짜인데 몇일 전에 글 작성했나 입니다.

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;

 

 

이렇게 해 보세요~~ ^^

 

 

전체 적용하니 에러나 나지만

if (!$last_write_date) {
 $day_count="처음";
}
cho $day_count;
이렇게 하니 처음이라고 나옵니다. 오늘은 0으로 나오니 크게 상관없고요
적용안함은 안해도 되는 문제였구요

정말 감사하고 고맙습니다.^^

답변을 작성하시기 전에 로그인 해주세요.
전체 123,619 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT