XE를 사용하다 보면 첨부파일이 123/456/과 같은 경로에 저장되는 것을 볼수 있습니다.

http://<홈페이지 URL>/123/456/<파일명>

 

 

XE는 파일을 저장할때 회원고유번호 등으로 폴더를 순환적으로 생성하여 저장합니다.

 

이 정보를 가져오기 위해서는 getNumberingPath 함수를 이용하면 됩니다.

 

 

예를 들어 회원정보를 조회할 수 있는 페이지를 만든다면 회원정보를 이용하여 회원사진이 저장된

 

파일경로를 다음 같은 함수를 만들어서 가져올 수 있습니다.

 

 

사용자고유번호를 XE의 방식에 맞게 파일 경로로 변경해 주는 함수를 먼저 생성하고

 

<%!

   private int size = 3;

 

    private String getNumberingPath(int no, int size){

                     int mod = (int)Math.pow(10, size);

        String output = String.format("%0"+size+"d/", no%mod);

                     if(no >= mod) { output += getNumberingPath(no/mod, size);}

                     return output;

   }     

%>

 

 

다음과 같은 방법을 이용해서 파일을 가져 올 수 있습니다.

 

 

<img src='http://<XE URL>/files/member_extra_info/profile_image/<%=getNumberingPath(getMember_srl(), size) + files[i].getName()%>'

 

빨간색 부분은 환경에 맞게 수정하시면 됩니다.

 

getMember_srl()은 member_srl을 getNmae은 이미지 파일이름을 가져 오는 부분입니다.

 

 

 

 

 

 

 

 

XE(제로보드)에 ID에 특수문자 사용이 제한되어 있다.

 

특수문자를 사용하기 위해서는.

 

[XE설치경로]/common/js\xml_js.filter.js 파을을 열어

 

var regUserid=/^[a-z]+[\w-]*[a-z0-9]+$/i;

 

부분을 수정해 주면 된다.

 

만약 _ * . 을 추가한다면

 

var regUserid=/^[a-z]+[\w-]*[a-z0-9_*.]+$/i;

 

이렇게 하면 된다.

XE(제로보드)를 사용하던중 게시판에 동영상 삽입을 위하여

 

스크립트를 삽입해야 하는 경우가 있었습니다.

 

그런데 스크립트를 삽입하면 게사판에서 동작되어야 할 스크립트가.. 쭉.. 문자로 보입니다.

 

이때 문제가 되었던 사항이 XE의 보안 문제로 인하여  <script> 와 같은 문자는

 

&lt;script&gt;와 같이 문자가 치환되어 저장되는 것을 확인 했습니다.

 

인터넷을 찾다 보니 해결 방법이 나왔습니다. 해결방법은

 

XE 설치 위치에서  config 폴더(디렉토리) 안에 있는 func.inc.php. 파일을 수정하면 됩니다.

 

수정해 주실 부분은 다음코드중 빨간색 부분을 삭제 저장해 주시면됩니다.

 

 

   /**

     * @brief 해킹 시도로 의심되는 코드들을 미리 차단

     **/

    function removeHackTag($content) {

        // 특정 태그들을 일반 문자로 변경

        $content = preg_replace('/<(\/?)(iframe|script|meta|style|applet|link|base|html|body)/is', '&lt;$1$2', $content);

 

 

이렇게 삭제 저장해 주시면 글쓰기 권한이 있는 모든 사용자는 script를 사용할 수 있습니다.

 

보안이 취약해 지는 만큼 폐쇄된 환경이 아닌 다수의 사용자가 또는 익명의 사용자가

 

사용할 수 있는 사이트에서는 사용을 자제하는것이 좋을것 같습니다.

 

+ Recent posts