게시판에 장문의 글을 적은 후 글등록 안되는 현상
본문
우선 wr_content 컬럼의 속성은 longtext 이며
write_update.php 의 내용또한 logtext 에 맞게 sustr 컷 한 상태입니다.
실제 write_update.php 파일은 실행이 정상적으로 되는듯 합니다.
글을 등록하고나서 오류 메시지 없이 넘어가는데 문제는 DB에 내용이 등록이 안되는게 문제네요
내부 오류 확인도 안되고... 아파치 에러로그에도 확인이 안되네요 혹시 php 에서 해당 내부 처리 부분을 로그로 떨어트릴수 있는 방법이라도 있을까요? 정말 답답하네요... 게시판인데 게시글을 못적으니...
디스크 또한 용량은 여유가 넉넉합니다. 혹시 아시는분 있으시면 부탁드립니다.
답변 8
write_update.php
if (isset($_POST['wr_content'])) {
$wr_content = substr(trim($_POST['wr_content']),0,65536);
$wr_content = preg_replace("#[\\\]+$#", "", $wr_content);
}
if ($wr_content == '') {
$msg[] = '<strong>내용</strong>을 입력하세요.';
}
글자수는 65536 이하 위처럼 여러가지 특수기호가 들어 가잇는 글이라면
걸러내는 ,,
// 사용자 코드 실행
@include_once($board_skin_path.'/write_update.skin.php');
@include_once($board_skin_path.'/write_update.tail.skin.php');
여기도 확인해 보세요
여기서 어떤 부분을 봐야하는건가요? write_update.skin.php 파일은 찾아보니 없긴한데 write_update.php
파일의 마지막 줄에 include 되어있긴 한데 이부분을 추가적으로 확인할게 있나요?
그곳에서 입력되는 값을 수정 삭제 하기도 합니다
저걸 풀어보면 대부분 스킨/보드/게시판 스킨 이름/write_update.skin.php'이거든요
저기서 처리하는 경우도잇어요
또한
write_update.php 안에 서
인서트문이 $sql =어쩌구저쪼구 있느데
그거끝나는 분분에
sql_query($sql);
이전에
echo $sql;
exit;
이러게 하면 게시판에 들어가는 sql 문두를 볼수있는데요
그 문구를 복사해서 여기 에 올려보세요
글이 등록이 안되는게 아니고
글을 올린신걸 보면 글만 복사한게 아니고 글의 스타일 및 여러가 지 옵션까지
복사가 되는것으로 복사해서 올릴때는 여러가지 글을 여과해서 올려야 되네요
그리고 글에 보면 div 코딩옵션이있는데 그개 DB 에 들어갈때와 표현이 될때 문제가 되는것으로보이네요
차라리 어느정도는 글로 올리지만
제가 보기에는 이미지 로 만들어서 올리면 깔끔하게 올라갈듯하네요
정리 를 하자면
가능성
- 글을 쓰는 글자 수가 많은 경우
- 글은 잘 db 에 들어가는데 그 글을 가져 올때에
환경 (코딩) 문제로 에러 가 나는 경우
- db 서버 환경 문제로 PHP 치환 환 함수가 작동하지안는 경우
- 다른곳에서 글을 복사할때 폰트및 여러가지 환경변수를 이용해서 보여주는 것을
복사해서 안되는 경우
이정도입니다
echo $sql;해보세요