procFilter 기능을 처음 사용해봐서 이래저래 난항을 겪네요;

 

우선 form은 아래와 같이 구성되어있습니다

화면 캡처 2022-07-26 222648.png

 

그리고 아래와 같이 form 내부에 이미지 파일을 넣을 수 있는 폼(product_pic)을 넣었습니다.

화면 캡처 2022-07-26 222551.png

 

그리고 insert.xml 파일은 아래와 같이 구성되어있습니다

<filter name="insert" module="hotoboard" act="procHotoboardInsertDocument">
  <form>
    <node target="nick_name" required="true" maxlength="20"/>
    <node target="password" required="true" />
    <node target="email_address" maxlength="250" filter="email" />
    <node target="homepage" maxlength="250" filter="url" />
    <node target="title" required="true" minlength="1" maxlength="250" />
    <node target="content" required="true" />
    <node target="category_srl" required="true" />
    <node target="sale_option" required="true" />
  </form>
  <response callback_func="completeDocumentInserted">
    <tag name="error" />
    <tag name="message" />
    <tag name="mid" />
    <tag name="document_srl" />
    <tag name="category_srl" />
  </response>
</filter>

 

그러나 제출을 하면, product_pic 항목이 보이지 않습니다.

화면 캡처 2022-07-26 222855.png

 

폼 제출시에 파일을 선택해도 데이터가 넘어가지 않는 상황입니다.

 

무엇이 문제일지 감조차 잡히지 않네요 ㅜㅜ

 

xml 파일에 product_pic 항목을 넣어줘도 동일한 증상입니다.

  • profile

    procFilter를 사용하지 않으시면 됩니다. 신규 자료에 그 고대유물을 왜 쓰죠? O.O

     

    procFilter는 XMLRPC로 폼을 제출하는데, 거기에 파일을 넣을 수는 없습니다. 라이믹스에서는 XMLRPC 흉내만 내고 실제로는 그냥 제출하지만, 어쨌든 XE에서 지원하지 않았던 부분이므로 굳이 확장하지 않습니다.

     

    폼을 AJAX로 제출하고 싶으시다면 onsubmit은 삭제하고 rx_ajax 클래스를 추가해 주세요. 파일 업로드도 지원하고, 콜백 함수도 지정할 수 있습니다.

     

    참고: https://github.com/rhymix/rhymix/pull/1206

  • profile profile
    게시판 스킨을 그대로 옮겨와서 최대한 수정사항을 줄이려다보니 그렇게 됐네요 ㅎㅎ;

    예전에 파일 제출이 안된다는 이야기는 얼핏 들었던거 같기는 한데, 그게 문제일줄은 몰랐네요

    굳이 ajax로 제출할 필요가 없다면 form에 mid,act를 hidden 속성으로 추가해서 그냥 submit해도 될까요?
  • profile profile

    폼에 mid, act를 hidden 속성으로 추가한 후
    class="원래있던 클래스 rx_ajax" 이렇게 하나 더 추가하면
    그냥 submit하는 것과 100% 똑같은 효과인데

    화면 전환 없이 js에서 결과를 받아볼 수 있습니다.^^

  • profile
    해결되었는데, 제목 수정이 안되네요..