XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

안녕하세요 오랜만에 질문을 남기게 되었습니다

 

현재 만드는 모듈에 게시글 작성시 섬네일로 쓸 이미지파일을 첨부받은 뒤에 list.html 쪽에 [이미지] [제목] 이런식으로 게시판처럼 만드려고하는데요 

 

write.html 에서 파일첨부를 

<tr>
        <th>{$lang->file}</th>
        <td class="left"><input type="file" name="upfile"></td>
  </tr>

이렇게 해서 파일 첨부를 받습니다

 

그리고 프론트 컨트롤러에서

 

function procShopContentWrite() {

            // request 값을 모두 받음
            $obj = Context::getRequestVars();

// 현재 모듈번호 확인
$obj->module_srl = Context::get('module_srl');

//shop_srl 확인
$shop_srl = Context::get('shop_srl');

// shop_srl에 따라 새로 입력하거나 수정하기 위해
if($shop_srl) 
            {
// module_srl이 있으면 update
$output = executeQuery("shop.updateShop", $obj);
$this->setMessage('success_updated');

} 
            else 
            {
                
                //module_srl번호를 넘겨주어야 하므로
                $module_info = Context::get("module_info");
                $module_srl = $module_info->module_srl;
                //첨부파일에 대한 정보는 Context::get으로 name을 입력만 해주면 됩니다.
                $upfile= Context::get("upfile");
                //upload_target_srl을 입력해줍니다. 여기서는 테스트를 위해 고정값을 입력했습니다. 필요한 숫자를 구하시면 되겠죠.
                $upload_target_srl = $shop_srl;

                //XE에서는 file이란 module을 제공하고 있습니다.
                $oFileController = getController('file');
                $output = $oFileController->insertFile($upfile, $module_srl, $upload_target_srl);
                
// module_srl이 없으면 insert
$output = executeQuery("shop.insertShop", $obj);
$this->setMessage('success_registed');
                
                var_dump($upfile);
}
 
}

이렇게 했는데 왜.. 

var_dump 로 보면 null 값이 들어갈까요?ㅜㅜ

 

http://dingadinga.tistory.com/183 이쪽에서 XE File Upload 부분을 봐서 해본건데 제가 잘못넣은건지...ㅎ

 

테스트로 <input type="hidden" name="tests" value="6" /> 해서 컨트롤러에서 찍어보면 6이 제대로나오는데.. file 같은경우는 null값이 떠버리네요...

  • ?
    SimpleCode 2016.11.21 23:51:03
    <form>에서 enctype 속성 값이 multipart/form-data이여만 파일이 서버로 전송됩니다.
    null이 날라왔다면, 폼 전송 단계에서 파일이 아예 넘어오지 않았다는 거에요.
  • profile
    네비 2016.11.22 01:15:56 Files첨부 (3)

    enctype="multipart/form-data"가 추가가 안되있어서 추가하고 썼는데.. 그래도 안되네요ㅎ.. 도대체 뭐가 잘못된건지...ㅜㅜ

     

    아니면 혹시 이와 같은 첨부파일기능이 달린 참고할만한 모듈이있을까요...

     

    캡처.PNG

     

    캡처2.PNG

     

    3.PNG

     

     

  • ?
    SimpleCode 2016.11.22 01:19:31
    XE에서 제공하는 XML JS Filter로는 파일 전송이 되지 않습니다.

    Resource 모듈을 참고하시면 XML JS Filter를 이용하면서도 파일 첨부를 할 수 있으니, 한 번 훑어보세요.
    워낙 방대한 내용이라 일일이 설명해드리기가 어렵네요.

    https://www.xpressengine.com/index.php?mid=download&package_id=18324191
  • profile
    네비 2016.11.22 10:24:05
    감사합니다 한번 보도록하겠습니다 ㅎ
  • profile
    GG 2016.11.22 10:12:55
    var_dump($obj) 해보셔요...
  • profile
    네비 2016.11.22 10:25:30

    object(stdClass)#117 (12) {
      ["_filter"]=>
      string(14) "content_insert"
      ["error_return_url"]=>
      string(45) "/index.php?mid=tests&act=dispShopContentWrite"
      ["act"]=>
      string(20) "procShopContentWrite"
      ["mid"]=>
      string(5) "tests"
      ["module_srl"]=>
      string(3) "136"
      ["regdate"]=>
      string(8) "20161122"
      ["shop_infomation"]=>
      string(13) "내용"
      ["member_srl"]=>
      string(1) "0"
      ["shop_title"]=>
      string(6) "제목"
      ["shop_category"]=>
      string(6) "없음"
      ["shop_price"]=>
      string(3) "222"
      ["module"]=>
      string(4) "shop"
    }

     

    보면... 프론트쪽에서 file input name가  upfile 로되어있는데 upfile라는게 없는걸보면 못넘어온것같습니다..

  • profile
    구름이 2016.11.22 10:39:24
    xml filter 사용하시면 사용하지 마시고 proc로 폼을 바로 전송해보세요.
  • profile
    네비 2016.11.22 11:20:08 Files첨부 (1)

    필터에서 file 업로드체크에관한 노드는 적지않았습니다 모듈첨부해두겠습니다 ㅜㅜ

    shop.zip

  • profile
    구름이 2016.11.22 12:01:32

    write.html

    4번 라인 <form action="./" method="get" enctype="multipart/form-data" onsubmit="return procFilter(this, content_insert);" >

    method="get" 를 post 로 해보세요.
    그리고 4 랑 52 라인 onsubmit="return procFilter(this, content_insert);" <- 이거 빼보시구요..

  • profile
    네비 2016.11.22 12:39:42
    필터부분을 통해 proc 컨트롤러로 가던데...write.html에서 onsubmit="return procFilter(this, content_insert);" 거치지않고 어떻게 바로보내죠? onsubmit="return procFilter(this, content_insert);"를 지우고 해보니 var_dump($obj);가 콘솔에 아예 찍히지않고 새로고침만 되었습니다
  • profile
    구름이 2016.11.22 13:01:10

    act 가 빠진거 같아요
    onsubmit 은 빼시고..
    <input type="hidden" name="act" value="proc이름" /> 을 form 에 추가해보세요.

  • profile
    네비 2016.11.22 13:56:21
    감사합니다 됐어요! ㅎㅎ 그런데 필터안쓰면 보안면에서 안좋지않나요?!
  • profile
    구름이 2016.11.22 14:29:16
    onsubmit 을 사용하시되 procfilter로 체크 하지 마시고 직접 자바스크립으로 체크하시면 될듯합니다
  • profile
    네비 2016.11.22 19:15:31
    아 그렇네요!! 감사합니다 ㅎㅎ

List of Articles
번호 제목 글쓴이 날짜
공지 답변을 확실히 받기위한 질문자 지침서 21 람보 2015.12.31
3295 댓글이 2페이지로 넘어가게 되면 1페이지 댓글이 안보입니다 스트릿 2016.11.24
3294 라이믹스 AJAX communication error while requesting 오류문의 9 날아라 2016.11.24
3293 끌어올리기아템에대해서문의드립니다 3 무도인짱짱 2016.11.23
3292 리다이렉트 관련 질문 좀 드리겠습니다!! 1 쭈박이 2016.11.23
3291 스케치북 게시판 모바일에서 2 pjk 2016.11.23
3290 슈퍼캐시가 갑자기 작동을 안하는 것 같아요.. 3 file 개그아투 2016.11.23
3289 클플관련해서 1 타임시커 2016.11.22
3288 [모듈] $upload_target_srl 에 관하여 2 네비 2016.11.22
3287 FAQ 모듈 개발 중단 된건가요? 3 구름이 2016.11.22
3286 오래되서 기억이 가물가물한데 js에서 디버그 어떻게 하나요? 6 날아라 2016.11.22
3285 효과적인 웹백업 어떻게 ? 32 웹지기 2016.11.22
3284 서버 커널 업데이트 언제 하시나요? 9 SimpleCode 2016.11.22
3283 MYSQL 에러같은데 전문가님들 딱 한번만 봐주세요 ㅠㅠ 11 file 엘비스 2016.11.21
» [모듈개발] 이미지 파일첨부 & 출력 14 네비 2016.11.21
3281 mysql restart 에러 문의드립니다. 3 렙흥아 2016.11.21
3280 레이아웃에서 위젯페이지인지, 게시판인지 구분하는 인자가 있을까요? 7 이온디 2016.11.21
3279 글 작성시 선택한 분류명이 글의 '태그'에 입력되게 하고 싶습니다 4 콕콕콕 2016.11.21
3278 대기 상태의 파일들은 지워버려도 되는건가요~~~~~? 2 투데이 2016.11.21
3277 XETOWN처럼 첨부파일을 올리면 이미지가 바로 본문에 삽입되는 애드온 4 투데이 2016.11.20
3276 라이믹스 최신버전에서 게시물 자동 이동기능이 또 안되네요 13 기븐 2016.11.20
Board Pagination Prev 1 ... 22 23 24 25 26 27 28 29 30 31 ... 191 Next
/ 191
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...