안녕하세요 유창화입니다.
제가 항상 생각하고 또 생각하는 것은
'용도에 알맞는 도구를 사용하여야 한다.'
라는 부분입니다.
요새 rss 주소만 알면 글들을 쉽게 내 홈페이지에 달수 있습니다.
rss 를 읽어오는데 꼭 rss reader 처럼 포괄적인것으로 읽어올 필요는 없습니다.
rss도 버젼이 다양하고, 보여주는 쪽에서 규칙외에 부분으로 보여주는 경우도 있기 때문에
기존 rss reader 들이 덩어리가 커지고 그렇습니다.
단순히 현재의 rss의 정보를 읽어서 그것을 적당히 보여주는 것이 목적이라면
다음과 같이 하여도 됩니다.
보여주는 모양새는 한rss ( http://www.hanrss.com/ )를 참조햇습니다.
--------------------------------------------------------------------------------------------------------------------------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Rss 읽어오기</title>
<style>
body {margin:0px 10px 3px 10px;padding:0}
body,td,select {font-family:Verdana,Gulim;font-size:9pt;}
td {overflow:hidden;text-overflow:ellipsis;}
td.description p {margin:0;padding:3 0 3 0;}
a.lnk1:link,a.lnk1:visited,a.lnk1:hover {color:#0000ff;text-decoration:underline;}
a.lnk2:link,a.lnk2:visited {color:#808080;text-decoration:none;}
a.lnk2:hover {text-decoration:underline;}
a.lnk3:link {color:#0000ff;text-decoration:none;}
a.lnk3:visited {color:#800080;text-decoration:none;}
a.lnk3:hover {text-decoration:underline;}
a.lnk4:link,a.lnk4:visited {color:#D2691E;text-decoration:none;}
a.lnk4:hover {text-decoration:underline;}
a.lnk5:link,a.lnk5:visited {color:#0000ff;text-decoration:none;}
a.lnk5:hover {background-color:#eeeeee;}
.header1 {font-weight:bold;font-size:12pt;}
.btn_submit1 {border:1px solid gray;width:40;height:20;background-color:white;font-family:Gulim;font-size:9pt;padding:2 0 0 0}
.btn_submit2 {border:1px solid #c0c0c0;width:34;height:18;background-color:white;font-family:Gulim;font-size:8pt;line-height:12pt}
</style>
<base target=_blank>
</head>
<body bgcolor='#ffffff'>
<?php
//올블로그 명예의전당 rss 글내용이 하루에 한번만 바뀝니다.
$url = "http://www.allblog.net/Rss/BestPosts.xml";
$result = file($url);
$text = implode("\n", $result);
if(!empty($text)){
$item = explode("<item>", $text);
$count = count($item);
echo "
<table width=100% border=0 cellpadding=0 cellspacing=0 style=\"table-layout:fixed;\">
<tr><td>
<table width=100% border=0 cellpadding=0 cellspacing=0 style=\"table-layout:fixed;\">
<tr>
<td align=right valign=top style=\"padding:0 4 0 0;font-size:8pt;color:gray\" nowrap>총 <b>" . ($count - 1) . "</b>개 | 최종업데이트: " . date("Y-m-d H:i") . "</td>
</tr>
</table>
</td></tr>
<tr><td height=4></td></tr>
</table>
";
if (is_array($item) && count($item) > 1) {
for ($i = 1; $i < $count; $i++){
preg_match_all("`<title>(.+)</title><link>(.+)</link><source url=\".+\">(.+)</source><category>([^<]+)</category>(<category>([^<]+)</category>)?(<category />)?<pubDate>(.+)</pubDate><description><!\[CDATA\[(.+)\]\]></description>`s", $item[$i], $matches);
if (is_array($matches[1]) && count($matches[1]) > 0) {
foreach($matches[1] as $key => $val){
$title = (!empty($val)) ? $val : '';
$link = (!empty($matches[2][$key])) ? $matches[2][$key] : '';
$source = (!empty($matches[3][$key])) ? $matches[3][$key] : '';
$category1 = (!empty($matches[4][$key])) ? $matches[4][$key] : '';
$category2 = (!empty($matches[6][$key])) ? $matches[6][$key] : '';
$category = (!empty($category1) && !empty($category2)) ? $category1 . ", " . $category2 : $category1 . $category2;
$pubDate = (!empty($matches[8][$key])) ? date("Y-m-d H:i", strtotime($matches[8][$key])) : '';
$description = (!empty($matches[9][$key])) ? $matches[9][$key] : '';
$description_len = number_format(strlen($description));
if (!preg_match("`(<\s*\t*img\s*\t*|<\s*\t*a\s*\t*href)`i", $description)) $description = strip_tags(str_replace(array("<", ">", "<br /><hr />위 내용은 올블로그가 올블로그에 등록한 블로그로부터 수집하여 서버에 저장하고 있는 내용의 전체 또는 일부 입니다. 이 게시물에 대한 모든 저작권과 책임은 해당 블로그의 등록자에게 있습니다."), array("<", ">", ""), $description)) . "<br /><hr />위 내용은 올블로그가 올블로그에 등록한 블로그로부터 수집하여 서버에 저장하고 있는 내용의 전체 또는 일부 입니다. 이 게시물에 대한 모든 저작권과 책임은 해당 블로그의 등록자에게 있습니다.";
echo "
<a href=\"" . $link . "\"></a>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td bgcolor=#bdb76b><img width=1 height=1 alt=\"\"></td></tr>
<tr><td bgcolor=#ebebd5 style='padding:5 2 6 2'>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style=\"font-size:10pt\"><a href=\"" . $link . "\"><span style=\"font-weight:bold\">" . $title . "</span></a></td></tr>
</table>
</td></tr>
<tr><td style='padding:4 2 0 2'>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style='font-size:8pt;'> <font color=#808080>" . $pubDate . " 작성 <font color=#808080>| " . $category . "</font> <font color=#808080>| " . $description_len . "byte</font></font></td><td align=right style=\"font-family:Gulim;font-size:8pt;\" nowrap> </td></tr>
</table>
</td></tr>
</table>
<table id=\"desc_9612007\" width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style='padding:6 2 0 2;line-height:14pt;' class=description>" . $description . "</td></tr>
<tr><td height=10></td></tr>
</table>
<table width=100% border=0 cellpadding=0 cellspacing=0><tr><td height=12></td></tr></table>
";
}
}
}
}
}
?>
</body>
</html>
--------------------------------------------------------------------------------------------------------------------------------------
여기에 캐쉬기능만 달면 올블로그 전용으로는 가벼운 리더기가 될수 있습니다.
참고 url http://search.dyd.cc/simplereader.php<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]</div>
제가 항상 생각하고 또 생각하는 것은
'용도에 알맞는 도구를 사용하여야 한다.'
라는 부분입니다.
요새 rss 주소만 알면 글들을 쉽게 내 홈페이지에 달수 있습니다.
rss 를 읽어오는데 꼭 rss reader 처럼 포괄적인것으로 읽어올 필요는 없습니다.
rss도 버젼이 다양하고, 보여주는 쪽에서 규칙외에 부분으로 보여주는 경우도 있기 때문에
기존 rss reader 들이 덩어리가 커지고 그렇습니다.
단순히 현재의 rss의 정보를 읽어서 그것을 적당히 보여주는 것이 목적이라면
다음과 같이 하여도 됩니다.
보여주는 모양새는 한rss ( http://www.hanrss.com/ )를 참조햇습니다.
--------------------------------------------------------------------------------------------------------------------------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Rss 읽어오기</title>
<style>
body {margin:0px 10px 3px 10px;padding:0}
body,td,select {font-family:Verdana,Gulim;font-size:9pt;}
td {overflow:hidden;text-overflow:ellipsis;}
td.description p {margin:0;padding:3 0 3 0;}
a.lnk1:link,a.lnk1:visited,a.lnk1:hover {color:#0000ff;text-decoration:underline;}
a.lnk2:link,a.lnk2:visited {color:#808080;text-decoration:none;}
a.lnk2:hover {text-decoration:underline;}
a.lnk3:link {color:#0000ff;text-decoration:none;}
a.lnk3:visited {color:#800080;text-decoration:none;}
a.lnk3:hover {text-decoration:underline;}
a.lnk4:link,a.lnk4:visited {color:#D2691E;text-decoration:none;}
a.lnk4:hover {text-decoration:underline;}
a.lnk5:link,a.lnk5:visited {color:#0000ff;text-decoration:none;}
a.lnk5:hover {background-color:#eeeeee;}
.header1 {font-weight:bold;font-size:12pt;}
.btn_submit1 {border:1px solid gray;width:40;height:20;background-color:white;font-family:Gulim;font-size:9pt;padding:2 0 0 0}
.btn_submit2 {border:1px solid #c0c0c0;width:34;height:18;background-color:white;font-family:Gulim;font-size:8pt;line-height:12pt}
</style>
<base target=_blank>
</head>
<body bgcolor='#ffffff'>
<?php
//올블로그 명예의전당 rss 글내용이 하루에 한번만 바뀝니다.
$url = "http://www.allblog.net/Rss/BestPosts.xml";
$result = file($url);
$text = implode("\n", $result);
if(!empty($text)){
$item = explode("<item>", $text);
$count = count($item);
echo "
<table width=100% border=0 cellpadding=0 cellspacing=0 style=\"table-layout:fixed;\">
<tr><td>
<table width=100% border=0 cellpadding=0 cellspacing=0 style=\"table-layout:fixed;\">
<tr>
<td align=right valign=top style=\"padding:0 4 0 0;font-size:8pt;color:gray\" nowrap>총 <b>" . ($count - 1) . "</b>개 | 최종업데이트: " . date("Y-m-d H:i") . "</td>
</tr>
</table>
</td></tr>
<tr><td height=4></td></tr>
</table>
";
if (is_array($item) && count($item) > 1) {
for ($i = 1; $i < $count; $i++){
preg_match_all("`<title>(.+)</title><link>(.+)</link><source url=\".+\">(.+)</source><category>([^<]+)</category>(<category>([^<]+)</category>)?(<category />)?<pubDate>(.+)</pubDate><description><!\[CDATA\[(.+)\]\]></description>`s", $item[$i], $matches);
if (is_array($matches[1]) && count($matches[1]) > 0) {
foreach($matches[1] as $key => $val){
$title = (!empty($val)) ? $val : '';
$link = (!empty($matches[2][$key])) ? $matches[2][$key] : '';
$source = (!empty($matches[3][$key])) ? $matches[3][$key] : '';
$category1 = (!empty($matches[4][$key])) ? $matches[4][$key] : '';
$category2 = (!empty($matches[6][$key])) ? $matches[6][$key] : '';
$category = (!empty($category1) && !empty($category2)) ? $category1 . ", " . $category2 : $category1 . $category2;
$pubDate = (!empty($matches[8][$key])) ? date("Y-m-d H:i", strtotime($matches[8][$key])) : '';
$description = (!empty($matches[9][$key])) ? $matches[9][$key] : '';
$description_len = number_format(strlen($description));
if (!preg_match("`(<\s*\t*img\s*\t*|<\s*\t*a\s*\t*href)`i", $description)) $description = strip_tags(str_replace(array("<", ">", "<br /><hr />위 내용은 올블로그가 올블로그에 등록한 블로그로부터 수집하여 서버에 저장하고 있는 내용의 전체 또는 일부 입니다. 이 게시물에 대한 모든 저작권과 책임은 해당 블로그의 등록자에게 있습니다."), array("<", ">", ""), $description)) . "<br /><hr />위 내용은 올블로그가 올블로그에 등록한 블로그로부터 수집하여 서버에 저장하고 있는 내용의 전체 또는 일부 입니다. 이 게시물에 대한 모든 저작권과 책임은 해당 블로그의 등록자에게 있습니다.";
echo "
<a href=\"" . $link . "\"></a>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td bgcolor=#bdb76b><img width=1 height=1 alt=\"\"></td></tr>
<tr><td bgcolor=#ebebd5 style='padding:5 2 6 2'>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style=\"font-size:10pt\"><a href=\"" . $link . "\"><span style=\"font-weight:bold\">" . $title . "</span></a></td></tr>
</table>
</td></tr>
<tr><td style='padding:4 2 0 2'>
<table width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style='font-size:8pt;'> <font color=#808080>" . $pubDate . " 작성 <font color=#808080>| " . $category . "</font> <font color=#808080>| " . $description_len . "byte</font></font></td><td align=right style=\"font-family:Gulim;font-size:8pt;\" nowrap> </td></tr>
</table>
</td></tr>
</table>
<table id=\"desc_9612007\" width=100% border=0 cellpadding=0 cellspacing=0>
<tr><td style='padding:6 2 0 2;line-height:14pt;' class=description>" . $description . "</td></tr>
<tr><td height=10></td></tr>
</table>
<table width=100% border=0 cellpadding=0 cellspacing=0><tr><td height=12></td></tr></table>
";
}
}
}
}
}
?>
</body>
</html>
--------------------------------------------------------------------------------------------------------------------------------------
여기에 캐쉬기능만 달면 올블로그 전용으로는 가벼운 리더기가 될수 있습니다.
참고 url http://search.dyd.cc/simplereader.php<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]</div>
댓글 17개
감사합니다.
늦게라도 보신다면 조언 부탁드립니다.
캐쉬 추가기능 코드로 테스트 해보았습니다.
권고 하신대로 UTF-8로 저장하고 불렀더니 아래 에러가 뜹니다.
참고 링크는 현재 잘 들어오던데, 제 서버에서 file() 함수를 막아놓은 경우인가요??
Warning: file(): URL file-access is disabled in the server configuration in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 56
Warning: file(http://www.allblog.net/Rss/BestPosts.xml): failed to open stream: no suitable wrapper could be found in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 56
Warning: implode(): Bad arguments. in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 57
늦게라도 보신다면 조언 부탁드립니다.
캐쉬 추가기능 코드로 테스트 해보았습니다.
권고 하신대로 UTF-8로 저장하고 불렀더니 아래 에러가 뜹니다.
참고 링크는 현재 잘 들어오던데, 제 서버에서 file() 함수를 막아놓은 경우인가요??
Warning: file(): URL file-access is disabled in the server configuration in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 56
Warning: file(http://www.allblog.net/Rss/BestPosts.xml): failed to open stream: no suitable wrapper could be found in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 56
Warning: implode(): Bad arguments. in /web1/gnusr/www.gnusr.com/Ysample/Yallblog_rss.php on line 57
또 다른 유창화님의 팁을 통해 위 코멘트에 붙였던 서버 설정을 피해가는 방법을 찾았습니다.^^
다시한번 유창화님께 감사의 말씀을 드립니다.
원본 - 이렇게 되면 좋은데 제 계정에서는 file()함수가 막혀있더군요.
//올블로그 명예의전당 rss 글내용이 하루에 한번만 바뀝니다.
// $url = "http://www.allblog.net/Rss/BestPosts.xml";
// $result = file($url);
// $text = implode("\n", $result);
아래는 유창화님의 리퍼러 변경관련 코멘트에서 file()함수 대체 팁을 적용해서 성공(?)한 경우입니다.
http://gnusr.com/Ysample/Yallblog_rss_utf.php
//////////////////////////////////////////////////////////////////////////
// 리퍼러,캐시콘,file()함수등 제한된 부분을 돌고돌아 겨우 가져옴
// http://www.sir.co.kr/bbs/tb.php/pl_php/182 유창화님
$url = "http://www.allblog.net/Rss/BestPosts.xml";//읽어올 url
$referer = "http://test.com/";//속일 리퍼러
$array = parse_url($url);
$url_scheme = $array['scheme'];
$url_server = $array['host'];
$url_path = $array['path'];
$url_query= $array['query'];
$url_port = (empty($array['port'])) ? 80 : $array['port'];
$fp = fsockopen($url_server, $url_port);
if (empty($fp)) {
echo "error-http소켓접속에 실패하였습니다.";
exit;
}
fputs($fp, "GET " . $url_path . "?" . $url_query . " HTTP/1.0\n");
fputs($fp, "Accept: */*\n");
fputs($fp, "Content-Type: application/x-www-form-urlencoded\n");
fputs($fp, "Host: $url_server:$url_port\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "Cache-control: private\n");
fputs($fp, "Pragma: no-cache\n");
fputs($fp, "Connection: close\n\n");
$xmls = '';
while (!feof($fp)){
$xmls .= fgets($fp, 1024);
}
fclose($fp);
//$xmls = trim(substr($xmls,strpos($xmls, "\r\n\r\n")));//헤더 삭제
//echo $xmls;//제어이전 내용 확인
//////////////////////////////////////////////////////////////
// 이 서버에서는 바로 읽어서 처리는 않됨
// 캐쉬 디렉토리에 tmp.php파일 생성, 읽어온 내용 임시저장
$tmp_file = $cashe_dir . '/' . 'tmp.php';
$fp = @fopen($tmp_file, 'w');
if (empty($fp)) {
echo "임시저장 디렉토리의 퍼미션을 확인하세요";
exit;
}
@fwrite($fp, $xmls);
@fclose($fp);
@chmod($tmp_file, 0777);
$text = implode("\n", file($tmp_file));
// 임시저장 파일을 읽어들여 캐쉬에 저장
//echo $text;//저장 내용 확인
//////////////////////////////////////////////////// 끝
다시한번 유창화님께 감사의 말씀을 드립니다.
원본 - 이렇게 되면 좋은데 제 계정에서는 file()함수가 막혀있더군요.
//올블로그 명예의전당 rss 글내용이 하루에 한번만 바뀝니다.
// $url = "http://www.allblog.net/Rss/BestPosts.xml";
// $result = file($url);
// $text = implode("\n", $result);
아래는 유창화님의 리퍼러 변경관련 코멘트에서 file()함수 대체 팁을 적용해서 성공(?)한 경우입니다.
http://gnusr.com/Ysample/Yallblog_rss_utf.php
//////////////////////////////////////////////////////////////////////////
// 리퍼러,캐시콘,file()함수등 제한된 부분을 돌고돌아 겨우 가져옴
// http://www.sir.co.kr/bbs/tb.php/pl_php/182 유창화님
$url = "http://www.allblog.net/Rss/BestPosts.xml";//읽어올 url
$referer = "http://test.com/";//속일 리퍼러
$array = parse_url($url);
$url_scheme = $array['scheme'];
$url_server = $array['host'];
$url_path = $array['path'];
$url_query= $array['query'];
$url_port = (empty($array['port'])) ? 80 : $array['port'];
$fp = fsockopen($url_server, $url_port);
if (empty($fp)) {
echo "error-http소켓접속에 실패하였습니다.";
exit;
}
fputs($fp, "GET " . $url_path . "?" . $url_query . " HTTP/1.0\n");
fputs($fp, "Accept: */*\n");
fputs($fp, "Content-Type: application/x-www-form-urlencoded\n");
fputs($fp, "Host: $url_server:$url_port\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "Cache-control: private\n");
fputs($fp, "Pragma: no-cache\n");
fputs($fp, "Connection: close\n\n");
$xmls = '';
while (!feof($fp)){
$xmls .= fgets($fp, 1024);
}
fclose($fp);
//$xmls = trim(substr($xmls,strpos($xmls, "\r\n\r\n")));//헤더 삭제
//echo $xmls;//제어이전 내용 확인
//////////////////////////////////////////////////////////////
// 이 서버에서는 바로 읽어서 처리는 않됨
// 캐쉬 디렉토리에 tmp.php파일 생성, 읽어온 내용 임시저장
$tmp_file = $cashe_dir . '/' . 'tmp.php';
$fp = @fopen($tmp_file, 'w');
if (empty($fp)) {
echo "임시저장 디렉토리의 퍼미션을 확인하세요";
exit;
}
@fwrite($fp, $xmls);
@fclose($fp);
@chmod($tmp_file, 0777);
$text = implode("\n", file($tmp_file));
// 임시저장 파일을 읽어들여 캐쉬에 저장
//echo $text;//저장 내용 확인
//////////////////////////////////////////////////// 끝
file이 외부파일을 읽어오는 데 사용할수 없을경우
fsockopen을 사용하시면 되구요.
읽어온 파일을 저장할 필욘 없고 바로 사용하면 될듯한데요.
$url = "http://www.allblog.net/Rss/BestPosts.xml";//읽어올 url
$referer = "http://www.allblog.net/";//속일 리퍼러
$array = parse_url($url);
$url_scheme = $array['scheme'];
$url_server = $array['host'];
$url_path = $array['path'];
$url_query= $array['query'];
$url_port = (empty($array['port'])) ? 80 : $array['port'];
$fp = fsockopen($url_server, $url_port);
if (empty($fp)) {
echo "error-http소켓접속에 실패하였습니다.";
exit;
}
fputs($fp, "GET " . $url_path . "?" . $url_query . " HTTP/1.0\n");
fputs($fp, "Accept: */*\n");
fputs($fp, "Content-Type: application/x-www-form-urlencoded\n");
fputs($fp, "Host: $url_server:$url_port\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "Cache-control: private\n");
fputs($fp, "Pragma: no-cache\n");
fputs($fp, "Connection: close\n\n");
$text = '';
while (!feof($fp)){
$text .= fgets($fp, 1024);
}
fclose($fp);
if(!empty($text)){
$item = explode("<item>", $text);
$count = count($item);
.
.
.
.
.
이하 상동
fsockopen을 사용하시면 되구요.
읽어온 파일을 저장할 필욘 없고 바로 사용하면 될듯한데요.
$url = "http://www.allblog.net/Rss/BestPosts.xml";//읽어올 url
$referer = "http://www.allblog.net/";//속일 리퍼러
$array = parse_url($url);
$url_scheme = $array['scheme'];
$url_server = $array['host'];
$url_path = $array['path'];
$url_query= $array['query'];
$url_port = (empty($array['port'])) ? 80 : $array['port'];
$fp = fsockopen($url_server, $url_port);
if (empty($fp)) {
echo "error-http소켓접속에 실패하였습니다.";
exit;
}
fputs($fp, "GET " . $url_path . "?" . $url_query . " HTTP/1.0\n");
fputs($fp, "Accept: */*\n");
fputs($fp, "Content-Type: application/x-www-form-urlencoded\n");
fputs($fp, "Host: $url_server:$url_port\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "Cache-control: private\n");
fputs($fp, "Pragma: no-cache\n");
fputs($fp, "Connection: close\n\n");
$text = '';
while (!feof($fp)){
$text .= fgets($fp, 1024);
}
fclose($fp);
if(!empty($text)){
$item = explode("<item>", $text);
$count = count($item);
.
.
.
.
.
이하 상동
게시글 목록
| 번호 | 제목 |
|---|---|
| 9186 |
Flash
플래시 프리로딩 소스
3
|
| 9168 | |
| 9167 |
JavaScript
[FLV동영상] FLV 반복재생하기
|
| 28537 | |
| 9163 | |
| 28532 | |
| 9160 | |
| 9155 |
Flash
wmode
4
|
| 28530 |
HTML
특정 IP 차단하기...
1
|
| 9150 |
Flash
플래시 flv(동영상) 사용경험담
4
|
| 9144 | |
| 28529 | |
| 9143 |
기타
Top으로 ver2
|
| 9141 |
JavaScript
제목에 첫 글자만 스타일적용과 문장의 첫라인 스타일 적용
1
|
| 9138 | |
| 28523 |
HTML
전화 번호 숫자만 빼오기
5
|
| 9132 | |
| 28521 | |
| 9131 | |
| 9130 |
Flash
창크기 자동 조절
|
| 9129 |
Flash
플래시 메뉴
|
| 28517 |
HTML
사진을 액자에 넣기(액자 만들기)
3
|
| 9126 | |
| 28515 |
HTML
초간단 스크롤
1
|
| 9123 |
JavaScript
메모하지 않으면 깜빡깜빡 잊어버리는 것들
2
|
| 9122 |
기타
빈 무비클립 만들기
|
| 9119 | |
| 9118 | |
| 9114 |
JavaScript
euc-kr 문서를 utf-8 로 변환
3
|
| 9111 | |
| 28514 |
HTML
잘되는 센드메일 수신이 안될때...
|
| 9109 | |
| 9108 |
기타
Ajax 흉내 내기
|
| 9105 |
JavaScript
포토샵에서 트랜스폼과 카피를 동시에 하는 방법
2
|
| 9100 | |
| 9097 |
JavaScript
mod_rewrite 설치 법
2
|
| 9096 | |
| 9093 |
JavaScript
포토샵의 블렌딩 모드
2
|
| 9089 |
JavaScript
opacity(투명도) 값 쉽게 먹이기.
3
|
| 9083 | |
| 28511 | |
| 9081 |
기타
서버정보검색
1
|
| 9077 |
기타
텍스트시계
3
|
| 9073 | |
| 9070 |
기타
Key 관련
2
|
| 28510 |
HTML
textarea 에 Tab기능 넣기
|
| 9069 | |
| 9068 |
MySQL
초보일지 FC4에서 가상호스트설정과정
|
| 9067 |
기타
pop3서버 설치 방법
|
| 9065 |
JavaScript
메뉴 생성 클래스
1
|
| 9064 | |
| 9063 |
JavaScript
qpopper(pop3) 설치
|
| 9061 | |
| 9060 | |
| 9059 | |
| 28509 |
HTML
자바스크립트 오류 메시지 감추기
|
| 9058 |
JavaScript
RTL8201BL 랜카드 잡으려면
|
| 9057 |
MySQL
mysql 설치후 실행오류 처리
|
| 9056 | |
| 28508 | |
| 9055 |
JavaScript
RedHat(레드햇) 9 설치 후 yum 설치
|
| 9054 | |
| 28507 |
HTML
삼바 설정 간단 쉬운 쉽게
|
| 9053 | |
| 9052 |
JavaScript
메일 릴레이 테스트
|
| 9051 | |
| 9050 | |
| 9049 | |
| 9048 | |
| 9038 | |
| 9033 |
JavaScript
브러시 집안들 브러시 지름을 쉽고 빠르게 조절하자~~~
4
|
| 9032 |
정규표현식
페도라 코어 3에서 APM 설치하기
|
| 9031 |
Linux
rsync를 이용한 미러링
|
| 9029 | |
| 9026 | |
| 9024 |
기타
vi 서비스 편집
1
|
| 9023 |
MySQL
리눅스에서 mysql DB설정
|
| 9022 |
MySQL
리눅스 에서 아파치와 php 설치
|
| 9017 |
Flash
일러스트 CS2와 플래시에서 패스따기
4
|
| 9015 | |
| 28502 | |
| 9013 | |
| 9001 | |
| 8998 |
MySQL
exif 사용하기 (ms 윈도우용)
2
|
| 8994 |
JavaScript
Apache 보안 팁...--;;;
3
|
| 8993 |
기타
[펌] $_FILES
|
| 8992 | |
| 8989 |
JavaScript
scp 사용법
2
|
| 8988 | |
| 8987 |
Flash
선따라 움직이기(초보)
|
| 8981 |
JavaScript
옥션처럼 소스보기 안되는곳에 적용하니까, 소스 보이는 방법
5
|
| 8978 | |
| 8974 |
MySQL
실수로 삭제한 mysql DB 복구방법
3
|
| 8973 |
JavaScript
mozilla DHTML ROWS INSERT & DELETE
|
| 8971 | |
| 8970 | |
| 8963 |
JavaScript
제가 집에서 사용하는 서버를 살짝 공개합니다.^^
6
|
| 8959 | |
| 8953 |
JavaScript
ssh 무차별 로그인 공격 막기
5
|
| 8950 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기