묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
제발 좀 봐주세요....넘 어려워서 죽겠네요..
2003.07.05 08:04
$end_date = mktime(0,0,0, date("m")+$daymonth, date("d"), date("Y"));
여기서 end_date는 만기일 디비 저장 필드입니다..
그리고$daymonth는 폼에서 넘겨받은 값이고요...
이렇게 해서 end_date 필드에 저장을 했는데 그 다음이 문제입니다...
여기서 폼에서 또다시 $daymonth의 값을 더하려고 넘겨온다면 어떻게 기존의 end_date의 값에 또다시 넘겨온 값을 더해 end_date에 저장을 할수 있을까 하는 겁니다...
다시말해서 이치는 이렇습니다..
$end_date = mktime(0,0,0, date("m")+$daymonth, date("d"), date("Y"));
이렇게 디비에 만기일이 저장됩니다..
여기다가 만기일을 연장하려고
$end_date = mktime(0,0,0, date("m")+$daymonth, date("d"), date("Y")) + $daymonth <--요건 폼에서 또다시 넘겨받은 개월수
이렇게 디비의 end_date에 저장되어 있는 날짜와 또다시 폼에서 넘겨받은 개월수를 더해 다시 디비에 더한만큼의 값을 다시 저장할수 있는가 하는 문제입니다..
자세한 방법 좀 가르쳐 주십시요.
여기서 end_date는 만기일 디비 저장 필드입니다..
그리고$daymonth는 폼에서 넘겨받은 값이고요...
이렇게 해서 end_date 필드에 저장을 했는데 그 다음이 문제입니다...
여기서 폼에서 또다시 $daymonth의 값을 더하려고 넘겨온다면 어떻게 기존의 end_date의 값에 또다시 넘겨온 값을 더해 end_date에 저장을 할수 있을까 하는 겁니다...
다시말해서 이치는 이렇습니다..
$end_date = mktime(0,0,0, date("m")+$daymonth, date("d"), date("Y"));
이렇게 디비에 만기일이 저장됩니다..
여기다가 만기일을 연장하려고
$end_date = mktime(0,0,0, date("m")+$daymonth, date("d"), date("Y")) + $daymonth <--요건 폼에서 또다시 넘겨받은 개월수
이렇게 디비의 end_date에 저장되어 있는 날짜와 또다시 폼에서 넘겨받은 개월수를 더해 다시 디비에 더한만큼의 값을 다시 저장할수 있는가 하는 문제입니다..
자세한 방법 좀 가르쳐 주십시요.
댓글 4
-
이정헌
2003.07.05 21:01
-
CityBoys-Life
2003.07.05 18:43
이거 안되요..소스 좀 봐주세요..
<?
$_zb_url = "http://사이트주소/bbs/";
$_zb_path = "/절대경로/bbs/";
include $_zb_path."outlogin.php";
if (!$member[user_id])
{
?>
<script>
window.alert("로그인후 이용하세요.")
window.close(0);
</script>
<?
} else {
if(!$member[house_name]) { Error('<script>
alert("먼저 등록을 하시기 바랍니다.");
window.location="http://보여질주소";
opener.window.history.go(0);
</script>');}
}
// 라이브러리 함수 파일 인크루드
include "bbs/lib.php";
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
// DB 연결
if(!$connect) $connect=dbConn();
// 멤버 정보 구해오기;;; 멤버가 있을때
$member=member_info();
if(!$member[no]) Error("회원정보가 존재하지 않습니다");
$group=group_info($member[group_no]);
if($day == 5000){
$daymonth = 1;
} elseif($day == 10000) {
$daymonth = 3;
} elseif($day == 20000) {
$daymonth = 6;
} elseif($day == 30000) {
$daymonth = 12;
}
if($member[end_date] > time()) { Error('<script>
alert("이용권 연장구매를 하시기 바랍니다.");
window.history.go(-1);
</script>');}
$start_date = date("Y/m/d");
$query = "update $member_table set start_date='$start_date'";
$result = mysql_query($query);
$end_date = mktime(0,0,0,date("m",$end_date)+$daymonth, date("d",$end_date), date("Y",$end_date));
$query = "update $member_table set end_date='$end_date'";
$result = mysql_query($query);
if($member[pay] < $day) {
echo "<script>
alert('결제잔액이 부족합니다. 온라인 결제를 먼저 하십시요.');
opener.location.href='http://이동할 주소';
window.close();
</script>";
} else {
// 자신의 결제금액에서 이용권을 구매한 금액만큼을 빼줌.
$pay = $member[pay]-$day;
$query = "update $member_table set pay='$pay'";
$result = mysql_query($query);
}
?>
<script>
alert("회원님의 이용권구매가 정상적으로 구매처리 되었습니다.");
opener.location.href = 'http://이동할 주소/';
window.close();
</script> -
이정헌
2003.07.05 20:47
date의 두번째 인수는 $end_date가 아니라.. $member[end_date]겠네요..
그리고.. 처음 구매했을 때는 그냥 date("m")+$daymonth,date("d"),date("Y")로 쓰고..
연장일 때는 $member[end_date]를 넣는 걸로 나누면 될듯.. -
이정헌
2003.07.05 12:39
mktime(0,0,0,date("m",$end_date)+$daymonth, date("d",$end_date), date("Y",$end_date))
date에 두번째 인수로 timestamp를 주면 그에 해당하는 날짜,시간에 따라 date의 리턴값이 나옵니다..
날짜단위면 date나.. 아니면 datetime,timestamp형도 있고..
그런 형태면
"update $member_table set end_date=end_date+interval $daymonth month"
식으로 날짜 더하기가 가능한데요..