HTML문서 입력, 수정시, DB에 공백이 들어가는 문제와 문서가 흐트러지는 문제 해결팁
http://www.sir.co.kr/index.php?doc=bbs/gnuboard.php&bo_table=qa&sselect=wr_name&stext=%C0%CC%B9%CE&soperator=0&page=1&wr_id=4078
http://www.sir.co.kr/index.php?doc=bbs/gnuboard.php&bo_table=qa&sselect=wr_name&stext=%C0%CC%B9%CE&soperator=0&page=1&wr_id=4586
-------------------------------------------------------
해결이 완벽히 되었는가 했는데.... 3.2x 설치하고 나서 혹시나하고 들여다 보니 아직 문제가 있는거 같아서 팁을 올립니다.
보다 자세한 내용은 위의 글을 참고하시고, 더불어 이 팁의 용도는
HTML 코드가 들어있는 문서를 게시판에 올려야 하는 경우가 있는데
이때에는 글쓰기에 'HTML'체크부분을 클릭하면 나타나는 '자동줄바꿈~~어저꾸저쩌구'하는 부분에서 '아니요'를 해야
HTML문서가 정상적으로 출력이 되지요....
근데, 문제는 해당문서를 수정하기 위해서 '편집'모드에 들어갔다가 나오게되면 HTML문서가 흐트러지게 됩니다.
이유는... 수정(편집)모드에 들어갔다가 나오게 되는 순간 DB내 해당글이 입력되는 공간(wr_content)에 불필요하게 공백코드가 함께 들어가버리게 되는 탓에 이런 현상이 생기게 됩니다.
이걸 해결하는 방법은 다음과 같습니다.
/bbs/gbupdate.php 파일의 "270 라인~" 보게되면 아래의 내용이 있습니다.
-------------------------------------------------------------------
if ($member[mb_id]) {
// 자신의 글이라면
if ($member[mb_id] == $wr[mb_id]) {
$mb_id = $member[mb_id];
$wr_name = $member[mb_name];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
------------------------------------------------------------------
위 부분에 코드 두줄을 간단히 추가하시면 됩니다. 아래와 같이..
-------------------------------------------------------------------
if ($member[mb_id]) {
// 자신의 글이라면
if ($member[mb_id] == $wr[mb_id]) {
$mb_id = $member[mb_id];
$wr_name = $member[mb_name];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
$wr_content = ereg_replace('공백문자', '',$wr_content); // 한줄추가 (공백문자 글자가 아니라 공백문자)
$wr_content = trim($wr_content); // 또 한줄 추가
------------------------------------------------------------------
간단하지요? 간단합니다.........근데........예전에 이문제로 고생한적이 있어서......할줄모르는 PG 끄적거리느라 꽤 고생했었습니다.
아시는 분은 아시리라 보고, 무슨 내용인지 잘 모르시는 분들이 계시다면
html 코드로 작성된 테이블을 하나 만들어 가능하면 길~~~~~~~~게 내용을 만들어서 작성해 넣어보시면
이해가 되실겁니다....총총~~
http://www.sir.co.kr/index.php?doc=bbs/gnuboard.php&bo_table=qa&sselect=wr_name&stext=%C0%CC%B9%CE&soperator=0&page=1&wr_id=4586
-------------------------------------------------------
해결이 완벽히 되었는가 했는데.... 3.2x 설치하고 나서 혹시나하고 들여다 보니 아직 문제가 있는거 같아서 팁을 올립니다.
보다 자세한 내용은 위의 글을 참고하시고, 더불어 이 팁의 용도는
HTML 코드가 들어있는 문서를 게시판에 올려야 하는 경우가 있는데
이때에는 글쓰기에 'HTML'체크부분을 클릭하면 나타나는 '자동줄바꿈~~어저꾸저쩌구'하는 부분에서 '아니요'를 해야
HTML문서가 정상적으로 출력이 되지요....
근데, 문제는 해당문서를 수정하기 위해서 '편집'모드에 들어갔다가 나오게되면 HTML문서가 흐트러지게 됩니다.
이유는... 수정(편집)모드에 들어갔다가 나오게 되는 순간 DB내 해당글이 입력되는 공간(wr_content)에 불필요하게 공백코드가 함께 들어가버리게 되는 탓에 이런 현상이 생기게 됩니다.
이걸 해결하는 방법은 다음과 같습니다.
/bbs/gbupdate.php 파일의 "270 라인~" 보게되면 아래의 내용이 있습니다.
-------------------------------------------------------------------
if ($member[mb_id]) {
// 자신의 글이라면
if ($member[mb_id] == $wr[mb_id]) {
$mb_id = $member[mb_id];
$wr_name = $member[mb_name];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
------------------------------------------------------------------
위 부분에 코드 두줄을 간단히 추가하시면 됩니다. 아래와 같이..
-------------------------------------------------------------------
if ($member[mb_id]) {
// 자신의 글이라면
if ($member[mb_id] == $wr[mb_id]) {
$mb_id = $member[mb_id];
$wr_name = $member[mb_name];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
$wr_content = ereg_replace('공백문자', '',$wr_content); // 한줄추가 (공백문자 글자가 아니라 공백문자)
$wr_content = trim($wr_content); // 또 한줄 추가
------------------------------------------------------------------
간단하지요? 간단합니다.........근데........예전에 이문제로 고생한적이 있어서......할줄모르는 PG 끄적거리느라 꽤 고생했었습니다.
아시는 분은 아시리라 보고, 무슨 내용인지 잘 모르시는 분들이 계시다면
html 코드로 작성된 테이블을 하나 만들어 가능하면 길~~~~~~~~게 내용을 만들어서 작성해 넣어보시면
이해가 되실겁니다....총총~~
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기
댓글 8개
얻어가기만 하는 초보자 입장에서는 너무 고마운 팁입니다.
감사합니다.
감사합니다.
db에 없던 공백코드가 들어가 있음을 보게 될것입니다.
특히, 테이블로 둘러싸인 html작업[칸:여러개 줄: 여러줄~]시는 문제가 나타납니다.
일단, 추천한방!
[문제점]
만약 두번 세번 수정을 하게 되고, html체크 및 br태그 적용 여부를 수시로 변경해서
수정 과정을 거치게 된다면 어떨까요?
애초에 html문서가 포함된 게시물을 작성시에는
아예 전체 테이블을 작성하고 그 내부에 내용을 작성하는데 -물론, br태그 미적용 상태로-
특별한 문제점을 발견하지 못했습니다.
테스트 파일 관련: 순수 html코드로만 작성된 8kb 이상의 문서 -좀 무식하게 길죠^^-
[이민]님께서 말씀해 주신 부분을 테스트 해 봐야 겠네요.
그럼 좋은날 되시길...
공백코다가 표시되지 않아서 글로 표현한겁니다