질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

홍보성님 보세요... 소스 올려봅니다. 근데 이소스가 맞는지 모르겠네요..

작성자 정보

  • 도인석 작성
  • 작성일

컨텐츠 정보

본문

<?
// ---------------------------------- 여기서부터 게시판 데이터 셀렉트  ------------------------------------//
// 해당게시물의 데이터를 읽어온다.
$SQL = "SELECT C_UID, C_FID, C_HIT, C_DEPTH, C_POS, C_IP, C_NAME, C_EMAIL, C_SUBJECT, C_FILENAME, C_FILESIZE, C_CONTENT, C_DATE
   FROM SKCNC_BOARD_$table WHERE C_UID = '$id'";
$res = mysql_query($SQL, $Conn);
$row = mysql_fetch_array($res);

// --------------------------------------------- 읽어온 데이터를 적절히 변환시킨다. --------------------------------------------------//

// 슬래시 제거였던감??
$row[C_SUBJECT] = stripslashes($row[C_SUBJECT]);
//$row[C_SUBJECT] = cut_str($row[C_SUBJECT], $env[SKCNC_SUBJECT_LENGTH]);
$row[C_CONTENT] = stripslashes($row[C_CONTENT]);
$row[C_CONTENT] = nl2br($row[C_CONTENT]);
$row[C_DATE] = date("Y년 m월 d일", $row[C_DATE]);

// url과 이메일의 정규 표현식
$http_pattern = "
http://([0-9a-zA-Z./@~?&=_]+)";
$email_pattern = "([_0-9a-zA-Z-]+(.[_0-9a-zA-Z-]+)*)@([0-9a-zA-Z-]+(.[0-9a-zA-Z-]+)*)";

// 컨텐츠의 url과 이메일을 링크시킴
//$row[C_CONTENT] = eregi_replace($http_pattern, "<a href=http://\1 target=_blank class=in>http://\1</a>", $row[C_CONTENT]);
$row[C_CONTENT] = eregi_replace($email_pattern, "<a href=mailto:\1@\3  class=in>\1@\3</a>", $row[C_CONTENT]);
$row[C_CONTENT] = eregi_replace('<xmp>', "&lt;xmp&gt;", $row[C_CONTENT]);
$row[C_CONTENT] = eregi_replace('<textarea>', "&lt;textarea&gt;", $row[C_CONTENT]);
$row[C_CONTENT] = eregi_replace('</textarea>', "&lt;/textarea&gt;", $row[C_CONTENT]);
$row[C_CONTENT] = eregi_replace('<base', "&lt;base", $row[C_CONTENT]);

// 키워드를 구분할 수 있도록 색상을 변경시켜준다.
if($keyword) {
 $row[C_CONTENT] = str_replace($keyword, "<font class=search>$keyword</font>", $row[C_CONTENT]);
 $row[C_SUBJECT] = str_replace($keyword, "<font class=search>$keyword</font>", $row[C_SUBJECT]);
}
// 이메일과 파일 다운로드 링크
if($row[C_EMAIL]) { $row[C_EMAIL] = "<a href=mailto:$row[C_EMAIL] class=in>$row[C_NAME]</a>"; } else { $row[C_EMAIL] = "$row[C_NAME]"; }

// 파일 사이즈를 구한다.
$row[C_FILESIZE] = convert_size($row[C_FILESIZE]);
if($row[C_FILENAME]) { $row[C_FILENAME]  = "<img src=./skcnc/img/file.gif align=absmiddle> <a href=./upload_$table/$row[C_FILENAME]>$row[C_FILENAME] ($row[C_FILESIZE]Kbyte)</a>"; } else { $row[C_FILENAME] = "없음"; }

// 메모를 읽어온다.
$SQL = "SELECT C_MID, C_NAME, C_MEMO, C_DATE
   FROM SKCNC_MEMO_$table WHERE C_UID = '$id' ORDER BY C_MID DESC";
$res_memo = mysql_query($SQL, $Conn);

// --------------------------------------------- 읽어온 데이터를 적절히 변환시킨다. 끝 -----------------------------------------------//
?>

관련자료

댓글 2

홍보성님의 댓글

  • 홍보성
  • 작성일
이 소스는 게시판 항목을 클릭했을때 세부 내용을 보여주는 소스의 일부네요.
DB의 SKCNC_BOARD_설정보드테이블명 에서 C_FILENAME을 쿼리해서 직접 보세요.
Filename이 온전한지 확인하시고 Fullname이 온전히 DB에 저장되어있지 않았다면 내용을 보여주는 소스가 아닌 upload를 클릭했을때 파일 정보를 올려주는 소스를 봐야 수정할 수 있겠습니다. 일단 리스팅 하는 부분은 이상이 없네요.

홍보성님의 댓글

  • 홍보성
  • 작성일
만약 DB의 C_FILENAME이 정상적인 FullName으로되어있다면 apache에서 한글 지원 옵션이 정상적으로 작동하지 않기 때문입니다.
mod_url 설치에 대한 방법에 대해 검색 해 보세요.

아파치에 mod_url을 올리면 한글파일, 띄어쓰기된 파일을 전부 지원합니다.
mod_url은 아파치 1.3.x 용하고 2.x 버전용이 별도로 있으니 참고하시고 설치 하시기 바랍니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,138 명
  • 현재 강좌수 :  36,196 개
  • 현재 접속자 :  650 명