크게 작게 인쇄

[그누보드]서버의 특정디렉토리의 모든 파일을 읽어서 게시판에 자동등록

<?php 

header("Content-type:text/html;charset=utf-8"); 
include_once './_common.php'; 
include_once $g4['path'].'/lib/lib.parse.php'; 

//게시판의 이름을 지정합니다. 
$bo_table= 'adult1'; 
$html = 'html1'; 
$write_table ="g4_write_$bo_table"; 

//실제로 읽어 들일 디렉토리의 경로입니다. 
$dir = $g4['path'].'/softmovie4/'; 


$dr = opendir($dir); 

if($dr == true): 
while(($file = readdir($dr)) ==true): 

$src_file = $dir.$file; 

if($file == '' || $file == '.' || $file == '..' || is_file($src_file) == false) 
continue; 
$file = iconv("euc-kr", "utf-8",$file); 
$dest_name = get_unique_file($file); 
$file = urldecode($file); 



$save_files = $dest_name; 
//파일을 지정할 경로 

$file_name = $g4['path']."/data/file/$bo_table/$save_files"; 

@copy($src_file, $file_name); 

if(is_file($file_name)==false) 
continue; 



$upload[0]['image'] = $g4['path']."/data/file/$bo_table/$save_files"; 
$upload[0][source] = $file; 
$upload[0][filesize] = filesize($upload[0]['image']); 
$upload[0][file] = $save_files; 


 
$wr_num = get_next_num($write_table); 
$wr_reply = ""; 


$save_title = addslashes(strip_tags($file)); 

$wr_subject= $save_title; 
$wr_content = $save_title; 


$sql = " insert into $write_table 
set wr_num = '$wr_num', 
wr_reply = '$wr_reply', 
wr_comment = 0, 
ca_name = '$ca_name', 
wr_option = '$html,$secret,$mail', 
wr_subject = '$wr_subject', 
wr_content = '$wr_content', 
wr_link1 = '$wr_link1', 
wr_link2 = '$wr_link2', 
wr_link1_hit = 0, 
wr_link2_hit = 0, 
wr_trackback = '$wr_trackback', 
wr_hit = 0, 
wr_good = 0, 
wr_nogood = 0, 
mb_id = 'admin_id', 
wr_password = 'admin_password', 
wr_name = 'admin_name', 
wr_email = 'adin_email', 
wr_homepage = '', 
wr_datetime = now(), 
wr_last = now(), 
wr_ip = '$_SERVER[REMOTE_ADDR]', 
wr_1 = '$file', 
wr_2 = '$wr_2', 
wr_3 = '$wr_3', 
wr_4 = '$wr_4', 
wr_5 = '$wr_5', 
wr_6 = '$wr_6', 
wr_7 = '$wr_7', 
wr_8 = '$wr_8', 
wr_9 = '$wr_9', 
wr_10 = '$wr_10' "; 

$que_result = @mysql_query($sql); 


if($que_result=true): 


$wr_id = mysql_insert_id(); 


$sql = " insert into g4_board_file 
set bo_table = '$bo_table', 
wr_id = '$wr_id', 
bf_no = '0', 
bf_source = '{$upload[0][file]}', 
bf_file = '{$upload[0][file]}', 
bf_content = '{$bf_content[0]}', 
bf_download = 0, 
bf_filesize = '{$upload[0][filesize]}', 
bf_width = '{$upload[0][image][0]}', 
bf_height = '{$upload[0][image][1]}', 
bf_type = '{$upload[0][image][2]}', 
bf_datetime = '$g4[time_ymdhis]' "; 


mysql_query($sql); 



// 부모 아이디에 UPDATE 
mysql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' "); 

// 새글 INSERT 
//sql_query(" insert into $g4[board_new_table] ( bo_table, wr_id, wr_parent, bn_datetime ) values ( '$bo_table', '$wr_id', '$wr_id', '$g4[time_ymdhis]' ) "); 
mysql_query(" insert into g4_board_new ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '$bo_table', '$wr_id', '$wr_id', '$g4[time_ymdhis]', '$member[mb_id]' ) "); 

// 게시글 1 증가 
mysql_query("update g4_board set bo_count_write = bo_count_write + 1 where bo_table = '$bo_table'"); 
endif; 
endwhile; 
closedir($dr); 
endif; 

?> 


/lib.parse.php 의 내용 
<?php 
//파일의 확장자를 구하는 함수 
function get_extension($file){ 
return strtolower(substr(strrchr($file,"."),1)); 

//파일의 확장자를 구하는 함수 

$info = @getimagesize($file); 
if(!$info) 
return ''; 
switch($info[2]) { 
case 1: 
return 'gif';break; 
case 2: 
return 'jpg';break; 
case 3: 
return 'png';break; 
case 4: 
return 'zip';break; 
case 5: 
return 'hwp';break; 
case 6: 
return 'doc';break; 
case 7: 
return 'xls';break; 
case 8: 
return 'ppt';break; 
default : 
return ''; 


//임시 번호를 생성하는 함수 
function get_unique_code($prefix = ""){ 
$prefix = $prefix ? $prefix : "mk_"; 

return $prefix.mt_rand(10000, 99999).'_'.mt_rand(10000, 99999); 

function get_unique_file($file){ 
$ext =get_extension($file); 
$code= get_unique_code(); 
return $code.'.'.$ext; 




//flag는 리눅스 인지, 윈도우인지, 리눅스의 경우 false, 윈도우의 경우 true 
function fsockopen_func($url) { 
$url_arr = parse_url($url); 
$request = $url_arr['host']; 
$get_value = $url_arr['path'].'?'.$url_arr['query']; 
$fp = fsockopen($request, 80, $errno, $errstr, 3); 
if (!$fp) { 
return false; 
} else { 
$out = "GET $get_value HTTP/1.1\r\n"; 
$out .= "Host: $request\r\n"; 
$out .= "Connection: Close\r\n\r\n"; 
fwrite($fp, $out); 
while (!feof($fp)) { 
$content .= fgets($fp, 128); 

fclose($fp); 
$content_arr = explode("\r\n\r\n", $content); 

if($content_arr[1] ==false) 
return ''; 
else 
return $content_arr[1]; 



//잡코리아를 파싱하는 경우 
function fsockopen_func_jobkorea($url, $flag= true) { 
$url_arr = parse_url($url); 
$request = $url_arr['host']; 
$get_value = $url_arr['path'].'?'.$url_arr['query']; 
$fp = @fsockopen($request, 80, $errno, $errstr, 5); 


if (!$fp) { 
return ''; 
} else { 
$out = "GET $get_value HTTP/1.1\r\n"; 
$out .= "Host: $request\r\n"; 
$out .= "Connection: Close\r\n\r\n"; 
fwrite($fp, $out); 
while (!feof($fp)) { 
$content .= fgets($fp, 128); 

fclose($fp); 

if(preg_match("/HTTP\/1\.1 200/", $content)==false) 
return ''; 

//echo "done"; 

$content_arr = explode("\r\n", $content); 


return $content_arr; 



//알바몬을 파싱하는 경우 
function fsockopen_func_albamon($url, $flag= true) { 
$url_arr = parse_url($url); 
$request = $url_arr['host']; 
$get_value = $url_arr['path'].'?'.$url_arr['query']; 
$fp = @fsockopen($request, 80, $errno, $errstr, 5); 


if (!$fp) { 
return false; 
} else { 
$out = "GET $get_value HTTP/1.1\r\n"; 
$out .= "Host: $request\r\n"; 
$out.= "User-Agent: {$_SERVER['HTTP_USER_AGENT']}\r\n"; 
$out .= "Connection: Close\r\n\r\n"; 
fwrite($fp, $out); 
while (!feof($fp)) { 
$content .= fgets($fp, 128); 

fclose($fp); 

if(preg_match("/HTTP\/1\.1 200/", $content)==false) 
return ''; 



$content_arr = explode("<?xml", $content); 

return $content_arr[1]; 




?>
 



※ 로그인 하시면 원본파일을 볼 수 있습니다. ※

0
코멘트 0
자동등록방지 코드
그누보드팁 | 전체게시물 160
안내

포인트안내닫기

  • 글읽기0
  • 글쓰기100
  • 댓글쓰기50
  • 다운로드-500
그누보드팁리스트
번호 제목 글쓴이 날짜 조회 추천
 공지  텍스트 슈퍼맨 웹스터디 12-17 - -
160 파일첨부 +1 링크 슈퍼맨 웹스터디 12-07 4928 0
159 텍스트 +3 슈퍼맨 웹스터디 12-07 4320 0
158 텍스트 +1 슈퍼맨 웹스터디 01-10 5451 0
157 텍스트 슈퍼맨 웹스터디 12-14 5069 0
156 텍스트 링크 슈퍼맨 웹스터디 12-06 7200 0
155 텍스트 링크 슈퍼맨 웹스터디 11-27 5265 0
154 텍스트 링크 슈퍼맨 웹스터디 09-27 6243 0
153 텍스트 슈퍼맨 웹스터디 09-06 4944 0
152 텍스트 +2 링크 슈퍼맨 웹스터디 08-15 5197 1
151 파일첨부 링크 슈퍼맨 웹스터디 07-19 4557 0
150 파일첨부 링크 슈퍼맨 웹스터디 07-12 6243 0
149 파일첨부 링크 슈퍼맨 웹스터디 07-02 6014 0
148 파일첨부 +2 링크 슈퍼맨 웹스터디 06-06 4789 0
147 텍스트 슈퍼맨 웹스터디 04-02 4809 0
146 파일첨부 링크 슈퍼맨 웹스터디 03-28 4966 0
145 파일첨부 링크 슈퍼맨 웹스터디 03-28 4962 0
144 파일첨부 +1 슈퍼맨 웹스터디 03-19 4808 0
143 파일첨부 슈퍼맨 웹스터디 03-13 4929 0
142 텍스트 +4 슈퍼맨 웹스터디 03-12 6968 0
141 텍스트 링크 슈퍼맨 웹스터디 02-15 5316 0