XETOWN

질문/답변

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

안녕하세요.

스케치북5 모바일 1.7.0 게시판을 사용하고 있는데 글쓰기와 댓글 수정시

태그가 출력되는 문제가 고쳐지질 않아 질문드립니다. (xe 1.8.22)

 

모바일은 웹 에디터로 설정되어있구요.

textarea는 모바일로 사진이나 자료 첨부를 많이 해야하는 사이트인지라 사용이 어렵습니다.

첨부파일 설정은 '본문 삽입'을 누르도록 되어있구요. 자동 첨부도 사이트 특성상 어렵습니다.

 

문제점 1.

스케치북5 모바일(웹 에디터)로 글 작성시

안녕하세요 가 <p>안녕하세요</p>로 출력되는 현상.

 

문제점 2.

스케치북 PC로 작성된 글을 모바일로 수정시 본문 전체가 <P>등의 태그로 나오는 현상.

 

문제점 3.

스케치북 모바일로 작성한 댓글을 다시 모바일로 수정할시 <P>태그가 붙어나옴.

 

 

전체적으로 태그가 출력되는 문제인데요 어떻게 해야할지 도저히 모르겠습니다.

인터넷을 다 뒤져봐도 소용이 없네요..

 

부디 도움 주시면 정말 정말 감사하겠습니다...

모바일로도 이미지를 꼭 업로드 시킬 수 있어야 합니다. 현재는 이미지 뿐 아니라 글 자체도 전부 <p></p>가 나오네요...

첨부파일을 본문 삽입하면 이미지 등이 아닌 html 그대로 나옵니다...

 

도움 주시면 감사하겠습니다..

  • profile
    MIST 2016.08.31 15:18:08

    헛 신기하네요....
    저는 쫌전에 <p></p> 가 db에 안달려서 강제로 달게 만들어 놓고 왔거든요^^
    말그대로 DB의 내용 그대로가 출력이 되신다는 말이네요?

    스케치북이 충돌이 일어나는건강...;저도 잘은 모르겠지만
    해결책1.

    db를 확인해 보셔서 혹시 <p><p>게시글</p></p>가 되어있다면
    $a=str_replace("<p><p>","<p>",$obj->content);
    $b=str_replace("</p></p>","</p>",$a);

    이렇게 게시판 스킨에 문자치환을 쓰셔서 DB로저장되기 전에 강제로 DB를 변경해 주시는 방법이있구용^^


    저같은 경우는 위젯에서 게시판으로 글을 보내는걸 만들고 있었는데요.
    소스 : $obj->content = "<p>".str_replace("\n","</p>\n<p>",$obj->content)."</p>";
    설명: <p>오브젝트 컨텐츠의 \n(엔터친부분)을 </p>\n<p></p>
    이걸 반대로 돌리면

    해결책2.
    요런 방법을 쓰셔도 될것같습니다.

    $a=str_replace("<p>","",$obj->content);
    $b=str_replace("</p>","",$a);
    $c=str_replace("\n","</p>\n<p>",$b);
    $d= "<p>".$c.</p>;

    설명: obj->content는 위젯내의 컨텐츠의 변수입니다.보드모듈에서는 $content인가 그런걸로 아는데 지금 시간이 없어서 ㅎ)

    $a는 컨텐츠의 모든<p>라는 놈을 공백으로 바꾼다
    $b는 $a의 값에서 </p>를 공백으로 바꾼다
    그런데 이때 엔터가 들어간경우 앞뒤 문장들을<p>로 묶어야 하므로
    $c는 엔터가 들어간부분을 </p>엔터<p>라고 바꾼다.

    그런데 또 이때 맨앞과 뒤를 <p>와 </p>로 묶어주어야 하므로
    $d는 앞뒤에 <p>와</p>를 붙어준다 입니다.

    흰트가 되셨을라나 모르겠네요^^
    컴터도 몰래 하는중이라 직접 모듈을 보고 해드렸어야 하는데 죄송해용 ㅎ

  • ?
    마끼아토 2016.08.31 15:29:22

    도움 감사합니다 ㅠㅠㅠ 알려주신 대로 적용해보겠습니다. 정말 감사합니다!!!!

  • profile
    MIST 2016.08.31 15:32:19
    위젯에서 쓰던 코드라 모듈에서는 잘모르겠습니다^^:
    아는 한도 내에서 올려드린거라 너무 믿지는 마세용 ㅎㅎ
  • ?
    마끼아토 2016.08.31 15:34:16
    답변 감사합니다 ㅠㅠㅠㅠ!!

위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...