dbnt.co.kr2019/common/common.php

250 lines
8.7 KiB
PHP

<?
/*****
* 공통 include 파일
*
* 각 Script 에 include 될 파일이다.
* 따라서 모든 페이지에 include 될 부분일 이곳에 적용해준다.
*****/
ini_set('zlib.output_compression', 'On');
ini_set('zlib.output_compression_level', 5 );
function callback($buffer)
{
global $_DB;
if(is_object($_DB)){
### disconnect
$_DB->disconnect();
### unset
unset($_DB);
}
if(_ALERT == "1"){
return _MSG;
}else{
//return ob_gzhandler($buffer,5);
return $buffer;
}
// 모든 apples를 oranges로 치환합니다.
//return (str_replace("apples", "oranges", $buffer));
}
ob_start("callback"); //출력 버퍼링을 켭니다. 출력 버퍼링을 활성화하면, (헤더를 제외한) 스크립트의 모든 출력을 내부 버퍼에 저장하고, 실제로 전송하지 않습니다.
# for HTTP/1.1
header ('Cache-Control: no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0');
# for HTTP/1.0
header ('Pragma: no-cache');
require_once dirname(__file__).'/conf/config.php'; // 기본설정
require_once dirname(__file__).'/lib/lib.util.php'; // 함수
require_once dirname(__file__).'/lib/class.cipher.php'; // 암호화/복호화
require_once dirname(__file__).'/phpThumb/phpThumb.config.php'; //썸네일
require_once dirname(__file__).'/upload/src/class.upload.php'; //썸네일 변환
require_once dirname(__file__).'/lib/class.smtp.php'; // SMTP
require_once dirname(__file__).'/lib/class.phpmailer.php'; // SMTP
require_once dirname(__file__).'/lib/class.user.php'; // 회원
require_once dirname(__file__).'/lib/class.board.php'; // 게시판
require_once dirname(__file__).'/lib/class.contact.php'; // 문의
require_once dirname(__file__).'/lib/class.popup.php'; // 팝업
require_once dirname(__file__).'/lib/class.banner.php'; // 배너관리
require_once dirname(__file__).'/lib/class.history.php'; // 연혁관리
$sessdir = str_replace("/mobile","",_PDS)."sessions";
ini_set('session.save_path', $sessdir);
### 정보에 대해 세션을 사용할것이다. 따라서 이곳에서 start 해준다.
if(!session_id()){
session_start();
}
// 1 시간 이상된 세션을 강제로 삭제한다.
$d = dir(_PDS."sessions");
while (false !== ($entry = $d->read())) {
if (substr($entry, 0, 1) != '.' && $entry != 'index.php'){
$temp = file(_PDS."sessions" . '/' . $entry);
if( date ("YmdHis", filemtime(_PDS."sessions" . '/' . $entry)) < date("YmdHis",strtotime("-1 hour", strtotime(date ("Y-m-d H:i:s")))) ){
@unlink(_PDS."sessions" . '/' . $entry);
}
//debug($temp);
}
}
// pear 패키지가 기본만 설치되어 있어 더 필요한 부분을 사용할때 이용하기 위한 부분이다.
ini_set ("include_path",dirname(__file__)."/PEAR/".PATH_SEPARATOR.dirname(__file__)."/lib/".PATH_SEPARATOR.ini_get("include_path"));
// 0 이면 디버그 메세지 출력 안함, 1일경우 디버깅 메세지 출력
$_DEBUG = 1;
require_once "DB.php";
### DB connect
$res = $_DB = DB::connect(_DSN);
if(DB::isError($res)){die($res->getMessage());}
$res = $_DB->query(" SET NAMES 'utf8' COLLATE 'utf8_general_ci' ");
if (DB::isError($res)) die($res->getMessage());
$res = $_DB->query(" SET CHARACTER SET utf8 ");
if (DB::isError($res)) die($res->getMessage());
$res = $_DB->query(" set character_set_server = 'utf8' ");
if (DB::isError($res)) die($res->getMessage());
$res = $_DB->query(" set character_set_client = 'utf8' ");
if (DB::isError($res)) die($res->getMessage());
$res = $_DB->query(" set character_set_results = 'utf8' ");
if (DB::isError($res)) die($res->getMessage());
$res = $_DB->query(" set character_set_connection = 'utf8' ");
if (DB::isError($res)) die($res->getMessage());
// 기본 Object 선언
$obj_User = new User($_DB); // 회원 class
$Obj_board = new Board($_DB); // 게시판 class
$Obj_contact = new Contact($_DB); // 문의 class
$Obj_popup = new Popup($_DB); // 팝업 class
$Obj_banner = new Banner($_DB);// 배너관리 class
$Obj_history = new History($_DB); // 회사연혁 class
// 설정 Object 선언
$user_info = $obj_User->get_status();
$query = "
select
*
from
basic
";
$res = $_basic = $_DB->getRow($query,DB_FETCHMODE_ASSOC);
if (DB::isError($res)) {
go_url("","서버 오류입니다.\\n[".$res->getMessage()."]");
exit;
}
define("_TITLE", $_basic['b_title']); # 타이틀바
define("_TITLE_EN", $_basic['b_title_en']); # 타이틀바
define("_DOCTYPE", $_basic['b_doctype']); # DOCTYPE
define("_CHARSET", $_basic['b_charset']); # charset
define("_MASTER_NAME", $_basic['b_title']); # 메일 발송자
define("_MASTER_EMAIL", $_basic['b_email']); # 대표이메일
define("_MASTER_EMAIL_BUSINESS", $_basic['b_email_business']); # 사업제휴
define("_MASTER_EMAIL_PRODUCT", $_basic['b_email_product']); # 제품문의
define("_MASTER_COMPANY", $_basic['b_company']); # 회사명
define("_MASTER_EMAIL_BRANCH", $_basic['b_email_branch']); # 지사 대표이메일
define("_MASTER_TEL", $_basic['b_tel']); # 대표 연락처
define("_MASTER_TEL_EN", $_basic['b_tel_en']); # 대표 연락처
define("_MASTER_TEL_BRANCH", $_basic['b_tel_branch']); # 지사 대표 연락처
define("_MASTER_TEL_BRANCH_EN", $_basic['b_tel_branch_en']); # 지사 대표 연락처
define("_MASTER_FAX", $_basic['b_fax']); # 대표 fax
define("_MASTER_FAX_EN", $_basic['b_fax_en']); # 대표 fax
define("_MASTER_FAX_BRANCH", $_basic['b_fax_branch']); # 지사 대표 fax
define("_MASTER_FAX_BRANCH_EN", $_basic['b_fax_branch_en']); # 지사 대표 fax
define("_MASTER_ADDR", $_basic['b_addr']); # 주소
define("_MASTER_ADDR_EN", $_basic['b_addr_en']); # 주소
define("_MASTER_ADDR_BRANCH", $_basic['b_addr_branch']); # 지사 주소
define("_MASTER_ADDR_BRANCH_EN", $_basic['b_addr_branch_en']); # 지사 주소
define("_MASTER_CRN", $_basic['b_crn']); # 사업자등록번호
define("_MASTER_PRESIDENT", $_basic['b_president']); # 대표이사
define("_MASTER_PRESIDENT_EN", $_basic['b_president_en']); # 대표이사
define("_DESCRIPTION", $_basic['b_description']); # DESCRIPTION
define("_DESCRIPTION_EN", $_basic['b_description_en']); # DESCRIPTION
# 문자왕국 설정값
$_SMS_ID = $_basic['b_sms_id'];
$_SMS_PW = $_basic['b_sms_pw'];
$_SMS_SENDER = $_basic['b_sms_sender'];
$_SMS_RECEIVERS = $_basic['b_sms_receivers'];
define("_SMS_ID", $_SMS_ID);
define("_SMS_PW", $_SMS_PW);
define("_SMS_SENDER", $_SMS_SENDER);
define("_SMS_RECEIVERS", $_SMS_RECEIVERS);
# SMTP 계정
$_b_smtp_host = explode("@",$_basic['b_smtp_id']);
$_SMTP_MAIL_HOST = "smtp.".$_b_smtp_host[1];
$_SMTP_MAIL_ID = $_basic['b_smtp_id'];
$_SMTP_MAIL_PW = $_basic['b_smtp_pwd'];
define("_SMTP_MAIL_HOST", $_SMTP_MAIL_HOST);
define("_SMTP_MAIL_ID", $_SMTP_MAIL_ID);
define("_SMTP_MAIL_PW", $_SMTP_MAIL_PW);
# 구글 리캡차
$_Site_Key = $_basic['google_Site_Key'];
$_Secret_Key = $_basic['google_Secret_Key'];
define("_SITE_KEY", $_Site_Key);
define("_SECRET_KEY", $_Secret_Key);
// 모든 변수 담기
if (isset ($_GET) && get_magic_quotes_gpc ()) array_walk ($_GET, "StripAllSlashes");
if (isset ($_POST) && get_magic_quotes_gpc ()) array_walk ($_POST, "StripAllSlashes");
$argu = array_merge($_GET, $_POST);
array_walk($argu, "trimvalues");
//모바일 체크
$chk_m = rtn_mobile_chk();
// LANGAUAGE
header('P3P: CP="NOI CURa ADMa DEVa TAIa OUR DELa BUS IND PHY ONL UNI COM NAV INT DEM PRE"');
header('Cache-control: private'); // IE 6 FIX
if(isSet($_GET['lang']))
{
$language = $_GET['lang'];
// register the session and set the cookie
$_COOKIE['lang'] = $language;
setcookie("lang", $language, time() + (3600 * 24 * 30));
}
else if(isSet($_COOKIE['lang']))
{
$language = $_COOKIE['lang'];
}
else if(isSet($_COOKIE['lang']))
{
$language = $_COOKIE['lang'];
}
else
{
$language = 'ko';
}
switch ($language) {
case 'ko':
$language_file = 'lang.ko.php';
$_DESCRIPTION = _DESCRIPTION;
$_MASTER_TEL = _MASTER_TEL;
$_MASTER_FAX = _MASTER_FAX;
$_MASTER_ADDR = _MASTER_ADDR;
break;
case 'en':
$language_file = 'lang.en.php';
$_DESCRIPTION = _DESCRIPTION_EN;
$_MASTER_TEL = _MASTER_TEL_EN;
$_MASTER_FAX = _MASTER_FAX_EN;
$_MASTER_ADDR = _MASTER_ADDR_EN;
break;
default:
$language_file = 'lang.ko.php';
$_DESCRIPTION = _DESCRIPTION;
$_MASTER_TEL = _MASTER_TEL;
$_MASTER_FAX = _MASTER_FAX;
$_MASTER_ADDR = _MASTER_ADDR;
}
$_lang_check = ($language != "ko") ? "_".$language : "";
include_once $_SERVER['DOCUMENT_ROOT'].'/language/'.$language_file;
?>