숫자 증가 스크립트 생성 질문
본문
안녕하세요!
상품페이지 보면 몇 명이 구매했습니다 이런 문구를 삽입하려고하는데
하루 시작부터 점진적(정해진 숫자 내에서 랜덤)으로 오르다가 밤12시가되면 초기화 시키는걸 짜고싶어요!
이런 코드 짜는데에는 퍼블리셔라 잘 알지 못해서.. 혹시 방법이 있을까해서 질문남깁니다!
오늘도 행복한 하루 보내세요!
답변 3
안녕하세요. 한번 참고를 해보시겠어요?
increase_purchase.php
<?php
// 그누보드 환경 설정 불러오기
include_once('./_common.php');
// purchase 테이블에서 값을 가져옵니다.
$sql = "SELECT * FROM g5_purchase WHERE id = 1";
$result = sql_query($sql);
$row = sql_fetch_array($result);
if ($row) {
// 값이 존재하면 랜덤하게 증가시킵니다.
$new_count = $row['count'] + rand(1, 10);
$sql = "UPDATE g5_purchase SET count = $new_count WHERE id = 1";
sql_query($sql);
} else {
// 값이 없으면 새로운 레코드를 생성합니다.
$new_count = rand(1, 10);
$sql = "INSERT INTO g5_purchase (id, count) VALUES (1, $new_count)";
sql_query($sql);
}
// 증가된 값을 반환합니다.
echo $new_count;
?>
<!DOCTYPE html>
<html>
<head>
<script>
window.onload = function() {
fetch('increase_purchase.php')
.then(response => response.text())
.then(data => {
document.getElementById('purchases').innerHTML = data + " 명이 구매했습니다.";
});
}
</script>
</head>
<body>
<div id="purchases"></div>
</body>
</html>
추가로 리눅스서버의 크론탭 등을 사용해서 자정에 초기화 하는 부분이 필요합니다~
0 0 * * * /usr/bin/php /path/reset_purchase.php
eset_purchase.php
<?php
// 그누보드 환경 설정 불러오기
include_once('./_common.php');
// purchase 테이블의 값을 초기화합니다.
$sql = "UPDATE g5_purchase SET count = 0 WHERE id = 1";
sql_query($sql);
?>
오늘 기준으로 구매시 별도 상품 컬럼에 추가해서 랜덤 카운트로 구매수량 증가시키고 crontab으로 자동으로 초기화 시키도록 처리하는 방식으로 하셔야 하는데 퍼블리셔라면 해당 기능을 직접 작업을 하시기보다는 의뢰하시는게 효율적일듯 보입니다.
if(date('Y-m-d') == $config['cf_2']) {
$cf_1 = $config['cf_1'] + rand(0,10);
} else {
$cf_1 = 0;
}
$cf_2 = date('Y-m-d');
sql_query(" update {$g5['config_table']} set cf_1 = '{$cf_1}', cf_2 = '{$cf_2}' ");
echo $cf_1;
위와 같이 0~10 까지 랜덤 숫자를 cf_1 에 저장을 하는 방법이 있는데요..
중요한건 위의 더하는 부분을 얼마나 자주 실행을 할지가 시간이 중요한것 같네요.
!-->