테스트 사이트 - 개발 중인 베타 버전입니다

ajax 파일을 스킨 경로 안으로 옮기면 왜 안 되는 걸까요? 채택완료

sinbi 5년 전 조회 3,475

https://sir.kr/g5_skin/36597">https://sir.kr/g5_skin/36597

@열린이글 님 스킨을 공부하다가 이상(?)한 걸 발견했어요.

 

/bbs/ajax.list_subject.php 파일의 위치를 게시판 스킨 폴더 안으로 옮기고,

게시판 list.skin.php 하단에서 ajax 파일 경로를 아래처럼 바꿨더니 작동 않더라구요.

 

수정 전

</p>

<p>$.ajax({

    url: g5_bbs_url+"/ajax.list_subject.php",

 

수정 후

</p>

<p>$.ajax({

    url: "<?php echo $board_skin_url?>/ajax.list_subject.php",</p>

<p>

 

안 되는 이유가 궁금합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트

글세요 

여러가지 가능 성이 근데 아마 제생각에는 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
5년 전
아하, 그렇네요. 감사합니다.
저건 미처 생각 못했네요. ㅎ

댓글을 작성하려면 로그인이 필요합니다.

B
5년 전

※ 주의 ※

ajax.list_subject.php 그대로 사용하면 위험합니다.

아래처럼 URL을 통해 '테러'가 가능합니다.

http://domain/bbs/ajax.list_subject.php?wr_id=글번호&bo_table=게시판아이디&list_subject=제목

또는

http://domain/skin/board/basic_20200416/ajax.list_subject.php?wr_id=글번호&bo_table=게시판아이디&list_subject=제목

 

1. 관리자 확인 ... if ( !$is_admin ) exit('only admin');

2. 글번호 확인 ... if ( !preg_match('/^\d+$/', $wr_id) ) exit('only digit');

  좀 더 보강하자면, 실제 존재하는 글 번호인지 여부, wr_is_comment=0 추가 등

3. 게시판아이디, 제목 ... sql_real_escape_string($변수)

  $bo_table은 실제 테이블이 있는지 체크하거나, 지정한 형식의 문자만 입력되었는지 확인하거나...

  $list_subject는 길이 제한이라든가...

기타 생략합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
5년 전
오호...그런 경우도 있을 수 있군요.
자세한 설명 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

그리고 그거 좀 

 

           dataType: "json",             async: false,             cache: false,             success: function(data, textStatus) {                $("#row_list_subject_3").text(data.subject);             }

설명 하자면 

 

                                                                             

의 아이디 값 row_list_subject_여기 에 wr_id 값을 준건데요 위소스는 wr_id 가 3번 일경우에만 작동 

아래꺼로 해야 되요 

 

 

             $("#row_list_subject_"+wr_id).text(data.subject);

이러게 해야 정상 작동 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sinbi
5년 전
헤헤, 감사합니다. ^^
덕분에 ajax 공부에 큰 도움이 되었습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인