Root로 변경 (write Form) * 인자값 : DB명 (DB명을 넣는 이유는 global로 DB명을 지정하면 보안상의 위험이 있다) */ /* function rootAlter($mysql_db){ global $g5; $result = mysql_list_tables($mysql_db); $num_rows = mysql_num_rows($result); for ($i = 0; $i < $num_rows; $i++) { $table = mysql_tablename($result, $i); if(preg_match("/g5_write/", $table)){ $ro = get_member("root"); @mysql_query( "update $table set mb_id = 'root', wr_name='$ro[mb_name]' where mb_id = 'admin';" ); } } } */ function rootAlter($mysql_db){ global $g5; $sql = " SHOW TABLES FROM $mysql_db "; if($result = query($sql)) { while ($line = sql_fetch_array($result, MYSQL_ASSOC)) { $table = $line["Tables_in_$mysql_db"]; if(preg_match("/g5_write/", $table)){ $ro = get_member("root"); @sql_query( "update $table set mb_id = 'root', wr_name='$ro[mb_name]' where mb_id = 'admin';" ); } } } } /* * wr_id 값이 엉키는 경우 자동조정해주는 함수이다. */ function countAdjust($bo_table){ global $g5; $sql = " select count(*) as cnt from $g5[write_prefix]$bo_table where wr_is_comment = 0 "; $row = sql_fetch($sql); $bo_count_write = $row[cnt]; $sql = " select count(*) as cnt from $g5[write_prefix]$bo_table where wr_is_comment = 1 "; $row = sql_fetch($sql); $bo_count_comment = $row[cnt]; $sql = " select wr_id from $g5[write_prefix]$bo_table where wr_is_comment = 0 "; $result = sql_query($sql); for ($i=0; $row=sql_fetch_array($result); $i++) { $sql2 = " select count(*) as cnt from $g5[write_prefix]$bo_table where wr_parent = '$row[wr_id]' and wr_is_comment = 1 "; $row2 = sql_fetch($sql2); sql_query(" update $g5[write_prefix]$bo_table set wr_comment = '$row2[cnt]' where wr_id = '$row[wr_id]' "); } $sql = " update $g5[board_table] set bo_count_write = '$bo_count_write', bo_count_comment = '$bo_count_comment' where bo_table = '$bo_table' "; sql_query($sql); } /* * wr_1 부터 varchar 255 값을 longtext 로 변환한다.(인자값은 bo_table 이다) */ function longText($bo_table){ global $g5; $write_table = "$g5[write_prefix]$bo_table"; $sql="select * from $write_table"; $result = sql_query($sql); $field = sql_num_fields($result); for($i = 0; $i <$field; $i++) { $names[] = sql_field_name( $result, $i ); } //27번부터 wr_1 값이 존재한다. for($i=27; $i CP949 or CP949 => UTF-8 변환함수 */ function conv_uft($str){ $str = iconv("CP949", "UTF-8", $str); return $str; } function conv_han($str){ $str = iconv("UTF-8", "CP949", $str); return $str; } /* * bo_table 에서 wr_id값이 어느 page에 속하지는 구해주는 함수이다. * return 값은 page 번호이다. * 예) wr_id = 85의 값은 page = 2에 속한다. */ function getPage($bo_table, $wr_id){ global $g5; $sql = "select bo_sort_field, bo_page_rows from $g5[board_table] where bo_table = '$bo_table'"; $row = sql_fetch($sql); $page_rows = $row[bo_page_rows]; $sort_field = (!$row[bo_sort_field])? "wr_num asc" : $row[bo_sort_field]; $sql = "select wr_id from $g5[write_prefix]$bo_table order by {$sort_field}"; $result = sql_query($sql); $numArray = array(); while($row = sql_fetch_array($result)){ array_push($numArray, $row[wr_id]); } $num = array_search($wr_id, $numArray) + 1; $page = ceil($num/$page_rows); return $page; } // 2011.01,27 추가 function getList($sql) { // 배열생성 $arrResult = array(); // 쿼리실행 if($result = query($sql)) { while ($line = sql_fetch_array($result, MYSQL_ASSOC)) { array_push($arrResult, $line); } // 메모리 해제 sql_free_result($result); } else { echo("
");
    echo($sql."\n");
    echo("
"); } return $arrResult; } function getEntity($bo_table, $wr_id, $sql_where = ""){ global $g5, $member; $sql = " select * from $g5[write_prefix]$bo_table where wr_id = '$wr_id' $sql_where "; $row = sql_fetch($sql); $row[file] = get_file($bo_table, $row[wr_id]); return $row; } function query($sql) { // echo "connection=$this->link_id, query=$sql\n"; $result = sql_query($sql); return $result; } function getCodeNm($code_cls, $code){ $result = sql_fetch(" select code_nm from g4_code where code_cls = '$code_cls' and code = '$code' "); echo $result[code_nm]; } function getCodeList($code_cls){ /// 사이트 분류 $sql = "SELECT * FROM g4_code where code_cls = '{$code_cls}' order by dp_order "; $result = getList($sql); return $result; } // 셀렉트 박스 선택되어보이게 function getOptionListSelected($array, $value, $text, $select) { $out = ""; foreach ($array as $line) { if($line[$value]==$select) { $out = $out.""; } else { $out = $out.""; } } echo $out; } //where 조건추가 // ex ) append($sqlWhere, " and ", " cb_idx = '$params[cb_idx]' "); function append($sql, $appender, $text) { if(strlen($sql) > 0) { $sql = $sql.$appender.$text; } else { $sql = $text; } return $sql; } // echo 라인 바껴서 function log2($str){ echo "  >> ".$str."
"; } function ch_date($date){ $ex_date = explode("|",$date); $re_date = $ex_date[0]."년 ".$ex_date[1]."월 ".$ex_date[2]."일"; return $re_date; } function getDateFormat($str) { //2009-01-02 형식 if(strlen($str)){ return date("Y-m-d", strtotime($str)); }else{ return ; } } function right($value, $count){ return substr($value, ($count*-1)); } function left($string, $count){ return substr($string, 0, $count); } function getDateStr($str){ return substr($str,0,4)."-".substr($str,4,2)."-".substr($str,6,2); } function getDateStr2($str){ return substr($str,0,4)."/".substr($str,4,2)."/".substr($str,6,2); } function getDateStr3($str){ return substr($str,2,2).".".substr($str,4,2).".".substr($str,6,2); } //DateAdd함수를 정의합니다. function DateAdd ($interval, $number, $date) { //getdate()함수를 통해 얻은 배열값을 각각의 변수에 지정합니다. $date_time_array = getdate($date); $hours = $date_time_array["hours"]; $minutes = $date_time_array["minutes"]; $seconds = $date_time_array["seconds"]; $month = $date_time_array["mon"]; $day = $date_time_array["mday"]; $year = $date_time_array["year"]; //switch()구문을 사용해서 interval에 따라 적용합니다. switch ($interval) { case "yyyy": $year +=$number; break; case "q": $year +=($number*3); break; case "m": $month +=$number; break; case "y": case "d": case "w": $day+=$number; break; case "ww": $day+=($number*7); break; case "h": $hours+=$number; break; case "n": $minutes+=$number; break; case "s": $seconds+=$number; break; } //mktime()함수를 이용해서 unix timestamp반환합니다. $timestamp = mktime($hours ,$minutes, $seconds, $month,$day, $year); return $timestamp; } //DateDiff함수를 정의합니다. Function DateDiff ($interval, $date1,$date2) { // 두 날짜간 시간간격을 초로 얻을 수 있습니다. // bcdiv()는 오른쪽의 인자로 왼쪽의 인자를 나누어준 값을 반환합니다. $timedifference = $date2 - $date1; switch ($interval) { case "w": $retval = bcdiv($timedifference ,604800); break; case "d": $retval = bcdiv( $timedifference,86400); break; case "h": $retval = bcdiv ($timedifference,3600); break; case "n": $retval = bcdiv( $timedifference,60); break; case "s": $retval = $timedifference; break; } return $retval; } function GetPhoneMobileSelect($gbn,$name){ if($gbn == "tel"){ $out = ' '; }else{ $out = ' '; } return $out; } function getMemberList(){ global $g5; $sql = " select * from $g5[member_table] where mb_id <> 'admin' "; $rowList = getList($sql); return $rowList; } function getBoardList($bo_table,$end_int='10',$sql_where='',$img_width='',$img_height='', $start_int='0'){ $sql = " select * from g5_write_".$bo_table." where wr_is_comment = 0 $sql_where order by wr_num limit $start_int, $end_int"; $rList = getList($sql); for($j = 0; $j < count($rList); $j++){ $rList[$j][file] = get_file($bo_table, $rList[$j][wr_id]); $rList[$j][href] = "./board.php?bo_table=".$bo_table."&wr_id=".$rList[$j][wr_id]; } return $rList; } function add_hyphen($hp_no){ return preg_replace("/(0(?:2|[0-9]{2}))([0-9]+)([0-9]{4}$)/", "\\1-\\2-\\3", $hp_no); } // 인자값 설명 ("인풋네임지정", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "select claass 명", "input class 명"); function get_hp2($input_name, $val="", $req="", $sel_class="selectbox", $input_class="inputbox"){ // get_hp 함수 겹쳐서 바꿈 2015-08-03 $arr_val = @explode("-",$val); if($req == "req"){ $str_req = "required"; } $str = ''; $str .= '"; $str .= " - "; $str .= ''; $str .= " - "; $str .= ''; $str .= ""; return $str; } // 인자값 설명 ("인풋네임지정", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "select claass 명", "input class 명"); function get_tel($input_name, $val="", $req="", $sel_class="selectbox", $input_class="inputbox"){ $arr_val = @explode("-",$val); if($req == "req"){ $str_req = "required"; } $str = ''; $str .= '"; $str .= " - "; $str .= ''; $str .= " - "; $str .= ''; $str .= ""; return $str; } // 인자값 설명 ("인풋네임지정", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "select claass 명", "input class 명"); function get_tel2($input_name, $val="", $req="", $input_class="inputbox"){ $arr_val = @explode("-",$val); if($req == "req"){ $str_req = "required"; } $str = ''; $str .= ''; $str .= " - "; $str .= ''; $str .= " - "; $str .= ''; $str .= ""; return $str; } // 인자값 설명 ("인풋네임", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "select claass 명", "input class 명"); //echo get_email("wr_email", $write[wr_email], "", "selecbox", "inputbox"); function get_email($input_name, $val="", $req="", $sel_class="selectbox", $input_class="inputbox"){ $arr_val = @explode("@",$val); if($req == "req"){ $str_req = "required"; } $str = ''; $str .= ''; $str .= " @ "; $str .= ''; $str .= ' "; $str .= ""; return $str; } // 인자값 설명 ("인풋네임지정", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "input class 명"); // 신 우편번호 2015-08-04 function get_addr($input_name, $val="", $req="", $input_class="inputbox"){ $arr_zip = @explode("|",$val); if($req == "req"){ $str_req = "required"; } //$str = ""; $str = ''; $str .= ''; $str .= ''; //$str .= '-'; //$str .= ''; //$str .= ''; $str .= '
'; $str .= ''; $str .= '
'; $str .= ''; $str .= '
'; $str .= ''; $str .= ''; $str .= ''; $str .= ""; return $str; } // 인자값 설명 ("인풋네임지정", "인풋실제값", "req 입력하면 필수값으로, 입력안하면 필수값아님", "input class 명"); /* 구주소 function get_addr($input_name, $val="", $req="", $input_class="inputbox"){ $arr_zip = @explode("|",$val); if($req == "req"){ $str_req = "required"; } $str = ''; $str .= ''; $str .= ''; $str .= '-'; $str .= ''; $str .= ''; $str .= '
'; $str .= ''; $str .= '
'; $str .= ''; $str .= '
'; $str .= ''; $str .= ''; $str .= ''; $str .= ""; return $str; } */ // 인자값 설명 ("인풋 타이틀", "인풋 네임", "인풋 값", "필수 : req, 필수아님 : '' ", "input claass 명", "width 길이"); function get_input($input_title="", $input_name, $val="", $req="", $input_class="inputbox", $twidth=""){ if($req == "req"){ $str_req = "required"; } if(strlen($twidth) > 0){ $str_twidth = 'style="width:'.$twidth.'px;"'; }else{ $str_twidth = ''; } $str = ''; return $str; } // 인자값 설명 ("항목명", "인풋네임", "array value", "인풋값", "radio사이에 구분값"); function get_radio($input_title="", $input_name, $arr_radio, $val, $gbn="  ", $input_class=""){ $str = ""; $str .= ""; $str .= ''; return $str; } // 인자값 설명 ("항목명", "인풋네임", "array value", "인풋값", "checkbox 사이에 구분값", "input class 명"); function get_checkbox($input_title="", $input_name, $arr_checkbox, $val, $gbn="  ", $input_class=""){ $str = ""; $str .= ""; $str .= ""; return $str; } // 인자값 설명 ("항목명", "인풋네임", "array value", "인풋값", "req 입력하면 필수값으로, 입력안하면 필수값아님" , "input class 명"); function get_select($input_title="", $input_name, $arr_select, $val, $req="", $input_class="selectbox"){ if($req == "req"){ $str_req = "required"; } $str = ""; $str .= ' '; $str .= ''; return $str; } // 비밀번호 생성시 사용 function get_rand(){ $chars_array = array_merge(range(0,9), range('a','z'), range('A','Z')); shuffle($chars_array); $shuffle = implode('', $chars_array); return $shuffle; } //구글 짧은URL 생성 함수 //$URL : 변환할도메인 //$mode : short => 짧은URL생성모드, 그위 => 원래 URL로 변경모드 //$option : ANALYTICS_CLICKS ,ANALYTICS_TOP_STRINGS ,FULL //$key : 발급받은 API Server Key값 //리턴값 : 결과배열값 function Google_Short_URL($URL, $mode = "short", $option = null, $key="AIzaSyCSZxKOuhlcN6xaDaiFzR5Fprh5eg4tTOc") { $GOOGLE_URL = "https://www.googleapis.com/urlshortener/v1/url?key=".$key; $option = $option ? "&projection=$option": null; $ch = curl_init(); if($mode=="short") { curl_setopt ($ch, CURLOPT_URL, $GOOGLE_URL); curl_setopt ($ch, CURLOPT_POST, 1); curl_setopt ($ch, CURLOPT_POSTFIELDS, json_encode(array("longUrl"=>$URL))); } else { curl_setopt ($ch, CURLOPT_URL, $GOOGLE_URL.'&shortUrl='.$URL.$option); } curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt ($ch, CURLOPT_SSLVERSION, 3); curl_setopt ($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json")); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_setopt ($ch, CURLOPT_TIMEOUT, 30); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($ch); curl_close($ch); return json_decode($result,true); // 사용방법 아래처럼 쓰면 됨. //$key = "AIzaSyCSZxKOuhlcN6xaDaiFzR5Fprh5eg4tTOc"; //$test = Google_Short_URL("http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI], "short", "", $key); // print_r2($test); } // 소숫점 표현하면서 정수형에 콤마 찍기 function get_num_format($num){ $num_i = (int)$num; $num_f = @round($num,1); $num_c = $num_f - $num_i; $num_r = @number_format($num_i).@substr($num_c,1,5); return $num_r; } // 작업 IP에서만 보이는 함수 // 작업 IP에서만 보이는 함수 function onlyview(){ global $_SERVER; $ip_addr = "106.244.205.196"; if($_SERVER[REMOTE_ADDR] == $ip_addr){ return true; }else{ return false; } } function getBirth($birth){ global $g5; $birth = @str_replace("-","",$birth); $birth = @substr($birth,0,4)."-".@substr($birth,4,2)."-".@substr($birth,6,2); return $birth; } ?> 0){ $tp[left_title] = $fmenu[$m_menu][5][$s_menu][3]; }else{ $tp[left_title] = $fmenu[$m_menu][5][$s_menu][3]; } if(strlen($fmenu[$m_menu][5][$s_menu][4]) > 0){ $tp[cont_title] = $fmenu[$m_menu][5][$s_menu][4]; }else{ //$tp[cont_title] = $fmenu[$m_menu][5][$s_menu][0]; } $tp[navi1] = $fmenu[$m_menu][0]; $tp[navi2] = $fmenu[$m_menu][5][$s_menu][0]; }else{ //문자 for($kk = 0; $kk < count($com_menu); $kk++){ if(preg_match("/$local/i",$com_menu[$kk][1])){ $tp[local] = $local; $tp[m_menu] = $local; $tp[s_menu] = $local; if(strlen($com_menu[$kk][3]) > 0){ $tp[left_title] = $com_menu[$kk][3]; }else{ $tp[left_title] = $com_menu_nm; } if(strlen($com_menu[$kk][4]) > 0){ $tp[cont_title] = $com_menu[$kk][4]; }else{ //$tp[cont_title] = $com_menu[$kk][0]; } $tp[navi1] = $com_menu_nm; $tp[navi2] = $com_menu[$kk][0]; } } for($kk = 0; $kk < count($sub_tab_menu); $kk++){ if(preg_match("/$local/i",$sub_tab_menu[$kk][2])){ $tp[local] = $local; $tp[m_menu] = substr($local,0,1); $tp[s_menu] = substr($local,1,1); if(strlen($com_menu[$kk][3]) > 0){ $tp[left_title] = $sub_tab_menu[$kk][3]; } if(strlen($com_menu[$kk][0]) > 0){ //$tp[cont_title] = $sub_tab_menu[$kk][0]; } $tp[navi1] = $sub_tab_menu[$kk][1]; $tp[navi2] = $sub_tab_menu[$kk][0]; } } for($kk = 0; $kk < count($cmenu); $kk++){ for($jj = 0; $jj < count($cmenu[$kk][5]); $jj++){ $bi_str = @str_replace($_SERVER[HTTP_HOST], "", $cmenu[$kk][5][$jj][1]); if(preg_match("/$local/i",$bi_str)){ $tp[local] = $local; $tp[s_menu] = ($jj+1); if(strlen($cmenu[$kk][5][$jj][3]) > 0){ $tp[left_title] = $cmenu[$kk][5][$jj][3]; }else{ $tp[left_title] = $cmenu[0]; } if(strlen($cmenu[$kk][5][$jj][4]) > 0){ $tp[cont_title] = $cmenu[$kk][5][$jj][4]; }else{ //$tp[cont_title] = $cmenu[$kk][5][$jj][0]; } $tp[navi1] = $cmenu[$kk][0]; $tp[navi2] = $cmenu[$kk][5][$jj][0]; } } } } return $tp; } // 파일명으로 다시 찾기 function getFindLocal($pagegbn){ global $p, $fmenu, $cmenu, $com_menu, $com_menu_nm, $sub_tab_menu; $ptmp = ""; for($z = 0; $z < count($fmenu); $z++){ for($x = 0; $x < count($fmenu[$z][5]); $x++){ $key = array_search($pagegbn, $fmenu[$z][5][$x]); // $key = 2; //echo "대메뉴 : ".$z.", 소메뉴 : ".$x."---------".$key."=====


"; if($key > 0){ $ptmp = ($z+1).($x+1); break; } } if($key > 0) break; } // 만약 존재하지않는 서브페이지라면... if(strlen($ptmp) == 0){ //goto_url(G5_URL); } return $ptmp; } /**************************************************************/ // pretty url 을 위해서.. 넣음 // 참고주소 : https://www.youtube.com/watch?v=ZgCW2x5QCXo class simpleUrl{ var $site_path; function __construct($site_path){ $this->site_path = $this->removeSlash($site_path); } function __toString(){ return $this->site_path; } private function removeSlash($string){ if($string[strlen($string) - 1] == '/') $string = rtrim($string,'/'); return $string; } function segment($segment){ $url_short = str_replace($this->site_path, '', $_SERVER[REQUEST_URI]); $url_short = explode('/', $url_short); if(isset($url_short[$segment])){ return $url_short[$segment]; }else{ return false; } } } // 페이지(page)로 로드 하는 체크 $arrpage = @explode('/', $_SERVER[REQUEST_URI]); // 서브페이지 인지 아닌지 체크하는 변수 $subpage_flag = false; if(strlen($arrpage[1]) > 0){ $url_short = new simpleUrl("/"); if( !$url_short->segment(1)){ $pagegbn = 'home'; }else{ $pagegbn = $url_short->segment(1); } $tmp_p = getFindLocal($pagegbn); if(strlen($tmp_p) > 0){ $p = $tmp_p; $_GET[p] = $p; $subpage_flag = true; } if(!defined('_INDEX_')) { $subpage_flag = true; } $local = getLocal($bo_table,$p); }else{ $local = getLocal($bo_table,$p); } $tp = getTp($local); $config[skin_header] = "force"; $config[skin_main] = "force"; $config[skin_footer] = "force"; $config[skin_lefter] = "force"; $config[skin_top] = "force"; $config[skin_main] = "force"; $config[skin_left] = "force"; $config[skin_quick] = "force"; // 레이아웃 스킨 변수 $head_skin_path = G5_PATH."/include/header/$config[skin_header]"; // header $main_skin_path = G5_PATH."/include/main/$config[skin_main]"; // main $footer_skin_path = G5_PATH."/include/footer/$config[skin_footer]"; // footer $sub_left_skin_path = G5_PATH."/include/left/$config[skin_lefter]"; // sub_left $quick_skin_path = G5_PATH."/include/quick/$config[skin_quick]"; // sub_left $head_skin_url = G5_URL."/include/header/$config[skin_header]"; // header $main_skin_url = G5_URL."/include/main/$config[skin_main]"; // main $footer_skin_url = G5_URL."/include/footer/$config[skin_footer]"; // footer $sub_left_skin_url = G5_URL."/include/left/$config[skin_lefter]"; // sub_left $quick_skin_url = G5_URL."/include/quick/$config[skin_quick]"; // sub_left ?> 0){?> 0){ $meta_content = @str_replace(" "," ",$write[wr_content]); $meta_content = @str_replace(chr(10),"",$meta_content); $meta_content = cut_str(get_text(@strip_tags(@str_replace(chr(10),"",$meta_content))),100); if(strlen($meta_content) < 20){ $meta_content = $arr_cf1[3]; } ?> 0){?> 0){?> 0){?> Blank corp. Taiwan

Blank corp. Taiwan

본문 바로가기주메뉴 바로가기

팝업레이어 알림

팝업레이어 알림이 없습니다.