이미지등 자동 치환

· 2004-05-15 (토) 15:21:24 · 2727 · 3
게시판에 글을 쓸때 이미지, 동영상, 음악등을 해당 주소만 적어 주면 html사용과 상관없이 보여주게 됩니다.

제로보드 유용한 팁(?)에서 가져다가 다른곳에서 사용하던 겁니다.

string.lib.php 에서 아래 해당 위치에 넣으시면 됩니다.


# 속도 향샹 031011
$str = preg_replace("/</", "\t_lt_\t", $str);
$str = preg_replace("/>/", "\t_gt_\t", $str);
$str = preg_replace("/&/", "&", $str);
$str = preg_replace("/"/", "\"", $str);
$str = preg_replace("/([^(http:\/\/)]|\(|^)(www\.[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:&#=_\?\/~\+%@;\-]+)/i", "\\1<A HREF=\"http://\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/([^(HREF=\"?'?)|(SRC=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms):\/\/[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:&#=_\?\/~\+%@;\-\|\,]+)/i", "\\1<A HREF=\"\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/(([a-z0-9_]|\-|\.)+@([^[:space:]]*)([[:alnum:]-]))/i", "<a href='mailto:\\1'>\\1</a>", $str);
$str = preg_replace("/\t_lt_\t/", "<", $str);
$str = preg_replace("/\t_gt_\t/", ">", $str);

//mms치환(자동, 미니위니 패턴)
$str = eregi_replace("(mms)://([^[:space:]]*)([[:alnum:]\#\?\/\&\=\200-\377])(.mp3|.MP3|.wma|.WMA|.wmv|.WMV|.asf|.ASF|.mpeg|.MPEG)", "<EMBED autostart='false' SRC=mms://\\2\\3\\4 />", $str);

//미디어치환(자동, 미니위니 패턴)
$str = eregi_replace("(http)://([^[:space:]]*)([[:alnum:]\#\?\/\&\=\200-\377])(.mp3|.MP3|.wma|.WMA|.wmv|.WMV|.asf|.ASF|.mpeg|.MPEG)", "<EMBED autostart='false' SRC=http://\\2\\3\\4 />", $str);

//플래시치환(자동, 미니위니 패턴)
$str = ereg_replace("(http)://([^[:space:]]*)([[:alnum:]\#\?\/\&\=\200-\377])(.swf|.SWF)","<EMBED loop=true menu=false quality=high WIDTH=580 HEIGHT=380 TYPE='application/x-shockwave-flash' PLUGINSPAGE='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' src='http://\\2\\3\\4' border=1></embed>", $str);

//이미지치환(자동, 미니위니 패턴)
$str = eregi_replace("(http)://([^[:space:]]*)([[:alnum:]\#\?\/\&\=\200-\377])([^[:space:]]*)(.png|.jpg|.gif|.PNG|.JPG|.GIF|.bmp|.BMP)", "<a class=auto href='http://\\2\\3\\4\\5' target=_blank><img src='http://\\2\\3\\4\\5' border=0></a>", $str);

return $str;
}


// url에 http:// 를 붙인다
|

댓글 3개

2004-05-20 (목) 04:27:24
답변감사합니다.

위에 적었던 것처럼 <a></a>를 지웠답니다.

근데도 새창이 뜨던걸요.

정상적인 새창이 아니라,

http://내도메인/gnu3/<img src='이미지경로' border=0>

이런식으로 뜹니다.

당연히 이미지는 안나오겠지요.

다시 말씀드리면 <a></a>를 지웠는데도, 클릭이 되더라 이거거든요.

클릭이 안되야 할텐데 말이죠.

왜 그럴까 궁금해서 질문 남겼습니다.^^;;

그럼 수고하시고, 답변 감사합니다.
링크부분 <a></a>만 지워주면 됩니다.
2004-05-19 (수) 20:50:30
좋은팁 감사합니다.
그런데, 이미지를 클릭하면 새창으로 뜨던데요. 전 새창뜨는걸 별로 안좋아해서, 아예 클릭이 안되게 할려면 어떻게 해야 되나요?
<a class=auto href='http://\\2\\3\\4\\5' target=_blank> 이것만 지우니까, 이상한 새창이 뜨던데요.
다른소스를 더 수정해야될것 같은데, 어디를 수정해야될까요. 흠흠..
댓글을 작성하시려면 로그인이 필요합니다.

그누3 팁자료실

1,026건
+
제목 글쓴이 날짜 조회
04-05-15 조회 2,728
04-05-14 조회 2,209
04-05-14 조회 2,702
04-05-13 조회 4,754
04-05-12 조회 2,468
04-05-10 조회 3,415
04-05-08 조회 2,445
04-05-08 조회 2,723
04-05-05 조회 3,206
04-05-04 조회 2,168
04-05-02 조회 3,402
04-05-02 조회 2,252
04-05-01 조회 4,456
04-05-01 조회 2,769
04-04-30 조회 3,295
04-04-28 조회 2,372
04-04-27 조회 2,746
04-04-26 조회 3,062
04-04-24 조회 2,157
04-04-24 조회 2,195