답변 1개
채택된 답변
+20 포인트
6년 전
게시판 글쓰기 하실 때
/js/common.js 에서 토큰을 생성합니다.
</p>
<p>
function get_write_token(bo_table)
{
var token = "";</p>
<p> $.ajax({
type: "POST",
url: g5_bbs_url+"/write_token.php",
data: { bo_table: bo_table },
cache: false,
async: false,
dataType: "json",
success: function(data) {
if(data.error) {
alert(data.error);
if(data.url)
document.location.href = data.url;</p>
<p> return false;
}</p>
<p> token = data.token;
}
});</p>
<p> return token;
}</p>
<p> </p>
<p>$(function() {
$(document).on("click", "form[name=fwrite] input:submit, form[name=fwrite] button:submit, form[name=fwrite] input:image", function() {
var f = this.form;</p>
<p> if (typeof(f.bo_table) == "undefined") {
return;
}</p>
<p> var bo_table = f.bo_table.value;
var token = get_write_token(bo_table);</p>
<p> if(!token) {
alert("토큰 정보가 올바르지 않습니다.");
return false;
}</p>
<p> var $f = $(f);</p>
<p> if(typeof f.token === "undefined")
$f.prepend('<input type="hidden" name="token" value="">');</p>
<p> $f.find("input[name=token]").val(token);</p>
<p> return true;</p>
<p> });
});</p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 4개
E
EAZY
6년 전
함수의 매개변수인 bo_table 이건 글쓰기한 게시판의 이름이들어가나요? 그리고 저토큰이없다면 글을쓸수없나요?
�
볼피드
6년 전
게시판의 이름이 들어갑니다.
토큰값이 들어가는 이유는 외부에서 프로그램 등을 이용한 자동 글쓰기나 정상적인 루트가 아닌 다른 루트로 접근하여 글을 쓰는 경우를 방지하기 위해서입니다
토큰값이 들어가는 이유는 외부에서 프로그램 등을 이용한 자동 글쓰기나 정상적인 루트가 아닌 다른 루트로 접근하여 글을 쓰는 경우를 방지하기 위해서입니다
E
EAZY
6년 전
제가 자바스크립트는 아무것도모르는데 get_write_token 함수의 매개변수로 게시판이름을 넣으면
어떤 문자열이 어떤암호화?가되서 나오나요? 나오는값은 36f45ce16a007d2512ed4acec30784b5
요렇게나오던데...
어떤 문자열이 어떤암호화?가되서 나오나요? 나오는값은 36f45ce16a007d2512ed4acec30784b5
요렇게나오던데...
�
잉끼s
6년 전
공부 중이시라면 분석해보세요.
/bbs/write_token.php 에서 생성된 값을 /bbs/write_update.php 에서 체크합니다.
체크하는 함수가 check_write_token() 입니다.
그냥 소스를 읽지 마시고요. 어떻게 동작하는지 하나 하나 뜯어보시기 바랍니다.
/bbs/write_token.php 에서 생성된 값을 /bbs/write_update.php 에서 체크합니다.
체크하는 함수가 check_write_token() 입니다.
그냥 소스를 읽지 마시고요. 어떻게 동작하는지 하나 하나 뜯어보시기 바랍니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인

