사실상 간단한 질문인것 같은데.. 뭐라고 찾아야하는지 몰라서 질문합니다.
특정 페이지로 가면 포인트가 +50 된다고 합시다.
그 페이지에 한눈에 볼 수 있도록 현재 포인트 값을 DB에서 불러와 출력했습니다. {$point}
그런데, 출력된 값은 바로 변경되지 않습니다.
그 페이지가면 포인트와 동시에 값도 바로 변경되면 좋겠는데 새로고침 해줘야만 값이 DB 정보랑 일치하게 됩니다.
요약하자면 이렇습니다.
[현재 문제점]
페이지 접속시(포인트 +50 지급) -> 현재 포인트: 0 // 새로고침 - > 현재 포인트: 50
[원하는 결과]
페이지 접속시(포인트 +50 지급) -> 현재 포인트: 50
감사합니다.
댓글 6
이렇게 써보세요 :)
misol님 덕분에 해결할 수 있었네요^^
감사합니다!
그렇죠. 그래서 확률을 적용 했습니다. 컬컬. 이렇게 하면 재밌을것 같아서요 ㅎㅎ
ps. 그리고 처음 1회시에만 지급됩니다. 그것도 악용될것 같아 확률을 적용했고요^^
포인트가 지급되기 전의 값을 출력하고 있는 게 아닐까요?
예)
1. 현재 포인트를 가져와서 $point라는 변수에 넣는다
2. 포인트에 50을 더하는 쿼리 실행 (아마 포인트 모듈을 호출할 듯)
3. $point를 화면에 표시한다
만약 이런 방식이라면 당연히 예전 값이 표시되겠죠. DB를 변경한다고 이미 가져온 변수까지 변경되지는 않으니까요.
2단계 후에 1단계를 다시 한 번 반복하거나, 이게 너무 비효율적이라고 생각된다면 위의 미솔님 댓글처럼 $point에 50을 더한 값을 출력하면 되겠습니다.
네, 제가 간과했네요 ㅜㅜ
misol님 답변 보고 '아차!' 했습니다.
항상 상세하게 답변 주셔서 감사합니다!