RX/XE 팁
XE FAQ 는 제가 XE공홈 '묻고 답하기'에 답변한 내용들 중 일부를 정리한 내용입니다. (대부분이 제가 한 답변이죠)
XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠

제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 sejin7940 

글 이동시 확장변수가 사라지는 현상을 발견한후, 실제 원인을 정확히 찾는데 3시간이나 걸렸다는..  ㅡㅡ;;

 

 

관리자가 게시판의 여러글 클릭 후, '게시글 관리'의 '게시글 이동' 기능을 사용할 경우..

해당 글들에 파일이 첨부되어 있지 않는 경우에는 아무 문제가 없는데..

파일이 첨부되어 있는 글인 경우, 그 글에 사용자정의(확장변수) 값이 등록되어있던 글이면...
게시글 이동하면,  사용자정의 값이 전부 사라지는 버그가 있다.


게시글 이동이 document.admin.controller.php  에서  moveDocumentModule  함수에서 
게시글 이동시 첨부된 파일이 있는 경우..

파일폴더를 새로운 모듈에 맞추기 위해  (폴더변경)
$oFileController->deleteFile($val->file_srl);  가 실행되서 기존폴더의 파일을 삭제하게 되는데..


file.controller.php 에서  deleteFile 함수 끝부분에 보면  $oDocumentController->updateUploaedCount   함수 실행된다.
(사실 글이동시에는 논리적으로는 이 부분이 실행될 필요가 없다.)

어쨋든 updateUploaedCount 함수 실행되면서, 그 내부의 updateDocument 가 실행된다.

그런데 이 updateDocument 내부에서는
확장변수가 있는 구조라면, 무조건 확장변수 전체를 지우고,  $obj->extra_vars1  같은 형태로 확장변수 값을 받아서 다시 저장된다.

이 updateDocument 는 원래 글 수정시 사용될 용도로 만들어졌고
글 수정시에는 확장변수 값이 전부 전달이 되기에 $obj->extra_vars1 형태에서는 문제가 없는데..

문제는 updateUploadedCount 함수에서  $oldDocument->variables  값이 넘어가는데..
extra_vars1 등은 칼럼의 변수 값들이 아니여서 (예전 1.4 때에서는 변수였지만. 1.7 에서는 별도 DB를 쓰기에)
게시글이동시엔, 결국 확장변수 값이 빈값이 전달되어 확장변수가 전부 다 초기화가 되어버리게 된다.

 

이 버그의 해결방법은 updateDocument 자체를 수정하는 방법도 있지만
이보다는,  글이동 ( moveDocumentModule ) 시 어차피 파일수가 같은데 굳이  updateDocument 가 실행되는  updateUploadedCount 를 실행시킬 필요자체가 없다

다만, deleteFile 함수는 실게 글 등록이나 수정시 파일 삭제의 경우 실행되고 이 때는 업로드파일 수 조절이 필요하기에
수정은 updateUploadedCount  쪽을 하는게 맞다.

결국, updateUploadedCount 를  실제파일수와 DB칼럼상에 기록된 파일수가 다른 경우에만 실행되게 하면 다 해결이 된다.

 

 

실제 수정방법은... 굉장히 간단한데....


document.controller.php 에서

updateUploaedCount 함수에서


if($oldDocument != null)

 

를 아래처럼 수정

 

if($oldDocument != null && ($oldDocument->get('uploaded_count')!=$fileCount) )

전체 695건
번호 카테고리 제목 출처 등록일 조회
공지 XE 기능개선 XE 1.11.18 이후 버전의 익명 수정 버그 수정법 xetown  2023.10.07 3218
공지 XE 기능개선 XE 1.11.14 보안패치 - 타인의 쪽지 내용을 확인할 수 있는 버그 패치방법 xetown  2023.10.03 3277
공지 XE 기능개선 XE 1.11.6 이후 보안배치 #4 file rhymix  2022.07.05 3450
공지 1.11.6 XE 1.11.6 이후 보안배치 #3 rhymix  2022.04.02 3397
공지 1.11.6 XE 1.11.6 이후 보안배치 #1 xetown  2021.06.22 3788
공지 1.11.6 XE 1.11.6 이하 에서 공개댓글을 비밀댓글로 변경시 생길 수 있는 오류 수정법 sejin7940  2021.01.10 3713
공지 XE 기능개선 XE 1.11.4 이후에서 파일 업로드시 정상 작동 안 하는 현상 수정법 XE github  2019.04.02 6467
공지 XE 기능개선 php 7.1 환경에서 XE 오류 나는 경우 확인할 사항 sejin7940  2018.07.11 6388
공지 유용정보 php7.2 환경에서 XE 오류가 생기는 경우 - Object 클래스 변경 필요 XE Github  2017.11.27 9968
공지 XE 기능개선 XE 1.8.30 이하에서 반드시 수정해주셔야하는 부분입니다. XE 1.8.31  2017.02.26 7173
공지 1.8.18 XE 1.8.18 에서 사용시 반드시 수정해야할 사항들 ( XE 1.8.20 이후에서는 수정 불필요 ) xetown  2016.04.03 26295
공지 XE 기능개선 XE 1.8.12 이후부터 proc controller 일부가 작동 안 할 경우 확인할 부분 [1] XE  2015.10.16 26206
695 유용정보 구글 애드센스 광고가 없을때 해당 영역 숨기려면 sejin7940  2024.11.19 0
694 라이믹스 selectbox 형태를 사용시 빈값 (공백) 을 제일 앞에 추가하고 사용자정의 이름이 기본으로 출력되게 하려면 sejin7940  2024.11.06 0
693 라이믹스 라이믹스 DB 및 쿼리 query 와 XML 문법 안내 rhymix  2024.11.09 1
692 라이믹스 게시판 검색어가 40자로 제한되어있음. 이를 늘리려면 sejin7940  2024.10.25 10
691 라이믹스 라이믹스에서 글 복사, 이동, 휴지통 이동, 삭제 등시 쪽지 발송 안 되도록 sejin7940  2024.10.25 10
690 유용정보 "스팸방지 CAPTCHA 서버와 통신하는 도중 오류가 발생했습니다." 라는 에러가 뜨는 경우 sejin7940  2024.10.14 16
689 XE 기능개선 XE 1.8.3 미만에서 우리메일 ( ggmailing ) 연결방법 XE  2024.07.06 51
688 XE 기능개선 스케치북에서 임시저장 후 불러오기시 상태(공개,비밀글) 값이 선택 안 되는 현상 수정법 sejin7940  2024.05.07 54
687 유용정보 웹푸시 등을 사용할 경우 알림이 24개까지 누적이 되면 더 이상 알림이 오지 않는 현상 samsung  2024.05.14 69
686 유용정보 윈도우 화면 분할 기능 끄기 위시랜  2024.05.24 70
685 유용정보 정규식으로 img 테그만 제거 its me  2024.04.13 73
684 유용정보 css, js 파일 수정 후 적용 안될 때 jurin.log  2024.05.14 75
683 유용정보 calc() - 속성값을 사칙연산으로 정할 수 있게 하는 함수 사용시 주의할 점 sejin7940  2024.02.12 90
682 유용정보 스케치북 스킨에서 모바일에서 view 화면에서 사진 위에서 스크롤이 안 되는 현상이 발생할때 sejin7940  2024.02.21 91
681 유용정보 XE에서 대표 썸네일 및 파비콘 등록 관련하여 sejin7940  2024.05.14 92
680 XE 기능개선 글등록 후 페이지 이동되기 전에 alert 이나 특정한 행위를 하고픈 경우.. sejin7940  2024.02.04 93
679 유용정보 cdn 이 오류날때 임시 우회 방법 xetown  2024.05.03 93
678 유용정보 php 버전이 낮을 경우 php 서버 업데이트를 반드시 해야하는 이유 sejin7940  2024.05.13 93
677 다른 XE자료들 출석부(attendance) 모듈에서 특정 유저들이 출석 불가능한 경우 오류 수정법 sejin7940  2021.03.17 118
676 XE FAQ 게시판에서 등록일 기준 검색은 없나요? sejin7940  2023.03.31 121
XE Login