BBS004.php 8.85 KB
<?php 
//*****************************************************************************
//* 
//* プログラム名:掲示板
//* プログラムID:BBS004.php
//* 機能        :登録
//* 作成者      :
//* 
//*****************************************************************************
include("include/dbcon.inc");
include("include/session_start.inc");
include("include/SessionChk.inc");
include('./include/smarty.conf');

//URLの頭取得
include("include/url_get.inc");
include("include/jcode.phps");

$strTempPath="temp/".$PHP_FOLDER_NAME."/bbs/";

$strSQLseq="";
$objRecseq="null";
$strSQLIns="";
$objRecIns="null";

//*** 掲示板***
$strMenuSQL = "SELECT name FROM sub_menu_TBL WHERE url = 'BBS001.php'";
$rsRecset = pg_exec($strMenuSQL);
if (pg_numrows($rsRecset)>0){
	$PHP_TITLE_NAME[8]=pg_result($rsRecset,0,"name");
}

$Title    = mb_convert_encoding(addslashes($Title), "EUC-JP", "auto");
$Contents = mb_convert_encoding(addslashes($Contents), "EUC-JP", "auto");

//シーケンスNO作成
$strSQLseq="SELECT seq FROM bbs_tbl ORDER BY seq DESC";
$objRecseq = pg_exec($strSQLseq);
if($objRecseq==false){
	echo("SQL実行に失敗しました(SELECT)");
	exit;
}
if (pg_numrows($objRecseq) > 0){
	$objseqNo = pg_fetch_object($objRecseq, 0);
	$intseqNo=($objseqNo->seq) +1;
}else{
	$intseqNo=1;
}

//システム日付取得
$strDate= date("Y") . "/" . date("m") . "/" . date("d");
$strTime= date("H") . ":" . date("i") . ":" . date("s");

//アップロードファイルの存在チェック
if ($upfile_name !=""){
	$upfile_name=str_replace(".","/",$upfile_name);
	list($strname,$strextension)=split("/",$upfile_name);
	$upfile_name="bbs".$intseqNo.".".$strextension;
	$file_name_jp=$strname.".".$strextension;
	$file = $strTempPath.$upfile_name;
	move_uploaded_file($upfile,$file);
}else{
	$upfile_name="";
	$file_name_jp="";
}

//掲示期限取得
$kigen = $kigen_y.$kigen_m.$kigen_d.$kigen_h.$kigen_i;
if(strlen($kigen) != 12){
	$strSQLkigen = "SELECT default_data FROM mst_default_data WHERE data_no = 2"; 
	$objReckigen = pg_exec($strSQLkigen);
	if($objReckigen==false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	$objkigen = pg_fetch_object($objReckigen, 0);
	$intKigen = (int)($objkigen->default_data);
	if($intKigen >= 30){
		$intMth = $intKigen / 30;
		$kigen = date("YmdHi",mktime(((int)date("H") + 1),0,0,((int)date("m") + $intMth),(int)date("d"),(int)date("Y")));
	}else{
		$kigen = date("YmdHi",mktime(((int)date("H") + 1),0,0,(int)date("m"),((int)date("d") + $intKigen),(int)date("Y")));			
	}
}
	
$strSQLIns = "Insert Into bbs_tbl " .
						"(seq,syain_cd,syozoku_cd,voicedate,voicetime,title,filename,filename_jp,message,send_bumon,period) " .
						"values (" .
						"$intseqNo,'$PHP_SYAIN_CD','$syozoku_cd','$strDate','$strTime','$Title','$upfile_name','$file_name_jp','$Contents',$bumon,'$kigen')";
$objRecSetIns = pg_exec($strSQLIns);
if($objRecSetIns==false){
	echo("SQL実行に失敗しました(INSERT)");
	exit;
}
	
//既読チェック処理
if ($bumon==0){
	$strSQL="Select Distinct syozoku_tbl.syain_cd From syozoku_tbl,syain_tbl Where syozoku_tbl.syain_cd = syain_tbl.syain_cd and syain_tbl.del_flg=true ";
}else{
	$strSQL="Select Distinct syozoku_tbl.syain_cd From syozoku_tbl,syain_tbl ".
					"Where syozoku_cd =$bumon and syozoku_tbl.syain_cd = syain_tbl.syain_cd and syain_tbl.del_flg=true ";
}
$objRecSet = pg_exec($strSQL);
if($objRecSet==false){
	echo("SQL実行に失敗しました(SELECT)");
	exit;
}

// 作成者名前取得
$strSQLNm="SELECT name_kj_sei,name_kj_mei FROM syain_tbl Where syain_cd='$PHP_SYAIN_CD'";
$objNm = pg_exec($strSQLNm);
if($objNm==false){
	echo("SQL実行に失敗しました(SELECT)");
	exit;
}
$objNmData = pg_fetch_object($objNm, 0);
$strNameData=$objNmData->name_kj_sei." ".$objNmData->name_kj_mei;

// システム日付取得
$strDate= date("Y") . "/" . date("m") . "/" . date("d");
$strTime= date("H") . ":" . date("i") . ":" . date("s");

for ($intCnt = 0; $intCnt < pg_numrows($objRecSet) ; $intCnt++) {
	$objData = pg_fetch_object($objRecSet, $intCnt);
	$strSyain_cd=trim($objData->syain_cd);
	if ($strSyain_cd == $PHP_SYAIN_CD){
		//*** 作成者 ***//
		$strSQLp = "Insert Into pbbs_tbl (seq,syain_cd,read_flg) values ($intseqNo,'$strSyain_cd',1)";
		$objRecp = pg_exec($strSQLp);
		if($objRecp==false){
			echo("SQL実行に失敗しました(INSERT)");
			exit;
		}
	}else{
		//*** 作成者以外 ***//
		$strSQLp = "Insert Into pbbs_tbl (seq,syain_cd,read_flg) values ($intseqNo,'$strSyain_cd',0)";
		$objRecp = pg_exec($strSQLp);
		if($objRecp==false){
			echo("SQL実行に失敗しました(INSERT)");
			exit;
		}

		//*** お知らせメール送信 ***//
		// 掲示板お知らせフラグ取得
		$strSQL="SELECT * FROM kojin_data_tbl WHERE seq=13 AND syain_cd='$strSyain_cd'";
		$objFlg = pg_exec($strSQL);
		if($objFlg==false){
			echo("SQL実行に失敗しました(SELECT)");
			exit;
		}
		if (pg_numrows($objFlg) > 0){
			$objFlgData=pg_fetch_object($objFlg, 0);
			$bbs_flg=$objFlgData->memo;
			if ($bbs_flg==""){
				$bbs_flg=0;
			}
		}else{
			$bbs_flg=0;
		}

		///お知らせ拒否時間取得
		$Mail_kyohi_flg = 0;
		$Mail_kyohi_time = "";
		$strSQL="SELECT no_alarm_time FROM mst_alarm WHERE syain_cd='$strSyain_cd'";
		$objData = pg_exec($strSQL);
		if($objData==false){
			echo("SQL実行に失敗しました(SELECT)");
			exit;
		}
		if (pg_numrows($objData) > 0){
			$objRec =pg_fetch_object($objData, 0);
			$Mail_kyohi_time=$objRec->no_alarm_time;
			if ($Mail_kyohi_time != ""){
			//拒否時間分割
				$Mail_kyohi_start_time=substr($Mail_kyohi_time,0,4);
				$Mail_kyohi_end_time=substr($Mail_kyohi_time,4,7);
				$Mail_kyohi_flg=1;
			}
		}

		//拒否時間判定
		if($Mail_kyohi_start_time > $Mail_kyohi_end_time){
			$Mail_kyohi_start_time1=$Mail_kyohi_start_time;
			$Mail_kyohi_end_time1="2400";
			$Mail_kyohi_start_time2="0000";
			$Mail_kyohi_end_time2=$Mail_kyohi_end_time;
		}else{
			$Mail_kyohi_start_time1=$Mail_kyohi_start_time;
			$Mail_kyohi_end_time1=$Mail_kyohi_end_time;
			$Mail_kyohi_start_time2=$Mail_kyohi_start_time;
			$Mail_kyohi_end_time2=$Mail_kyohi_end_time;
		}

		//処理時間時間編集
		$str_sinsei_time_h=substr($strTime,0,2);
		$str_sinsei_time_i=substr($strTime,3,2);
		$str_sinsei_time=$str_sinsei_time_h.$str_sinsei_time_i;

		if ($bbs_flg==1){
			$Mail_Headers  = "Date: ".$GMT_RFC."\n";
			$Mail_Headers .= "From: e-gru@media-tek.co.jp\n";
			//20131009
			//$Mail_Headers .= "Subject: $MailSubject\n";
			$Mail_Headers .= "MIME-Version: 1.0\n";
			$Mail_Headers .= "X-Mailer: PHP/".phpversion()."\n";
			$Mail_Headers .= "Content-type: text/plain; charset=ISO-2022-JP\n";
			$Mail_Headers .= "Content-Transfer-Encoding: 7bit";

			// お知らせメールアドレス取得
			$strSQL="SELECT mail_address,keitai__address FROM sendinfo_TBL Where syain_cd='$strSyain_cd'";
			$objSend = pg_exec($strSQL);
			if($objSend==false){
				echo("SQL実行に失敗しました(SELECT)");
				exit;
			}
			if (pg_numrows($objSend)>0){
				$objSendData = pg_fetch_object($objSend, 0);
				$Mail_address   = $objSendData->mail_address;
				$Mobile_address = $objSendData->keitai__address;
			}else{
				$Mail_address   = "";
				$Mobile_address = "";
			}

			if(($Mail_kyohi_flg == 0) || (($str_sinsei_time < $Mail_kyohi_start_time1) || ($str_sinsei_time > $Mail_kyohi_end_time1)) 
				&& (($str_sinsei_time < $Mail_kyohi_start_time2) || ($str_sinsei_time > $Mail_kyohi_end_time2))){

				//メール送信(PC)
				if ($Mail_address!=""){
					$Mail_Subject = "【E-gruPro】新着".$PHP_TITLE_NAME[8]."のお知らせ";
					$Mail_Subject = "=?iso-2022-jp?B?" . base64_encode(jcodeconvert(stripslashes($Mail_Subject), 0, 3)) . "?=";

					$Mail_Body  = "【タイトル】".$Title."\n";
					$Mail_Body .= "【作 成 者】".$strNameData."\n";
					$Mail_Body .= "【作成日時】".$strDate." ".$strTime."\n";
					//20081023
					$Mail_Body .= "\n※このメールは、送信専用メールアドレスから配信されています。\nご返信いただいても配信元へは届きませんのでご了承ください。\n";
					$Mail_Body .= "\n内容は下記よりログイン後、確認してください。\n".$UrlHead_PC."index.php";
					$Mail_Body = jcodeconvert($Mail_Body,1,3);

					$rcd = mail($Mail_address, $Mail_Subject, $Mail_Body, $Mail_Headers);
					if($rcd == false){
						$Status = -1;
					}
				}

				//メール送信(携帯)
				if ($Mobile_address!=""){
					$Mail_Subject = "【E-gruPro】新着".$PHP_TITLE_NAME[8]."のお知らせ";
					$Mail_Subject = "=?iso-2022-jp?B?" . base64_encode(jcodeconvert(stripslashes($Mail_Subject), 0, 3)) . "?=";

					$Mail_Body  = "【タイトル】".$Title."\n";
					$Mail_Body .= "【作 成 者】".$strNameData."\n";
					$Mail_Body .= "【作成日時】".$strDate." ".$strTime."\n";
					$Mail_Body .= "\n※このメールは、送信専用メールアドレスから配信されています。\nご返信いただいても配信元へは届きませんのでご了承ください。\n";
					if((int)$PHP_MOBILE_FLG!=1){
						//20081023
						$Mail_Body .= "\n以下のアドレスよりログインしてください。\n".$UrlHead_MB."index_m.php?P_SYAIN_CD=$strSyain_cd&P_FOLDER=$PHP_FOLDER_NAME&C=1";
					}
					$Mail_Body = jcodeconvert($Mail_Body,1,3);

					$rcd = mail($Mobile_address, $Mail_Subject, $Mail_Body, $Mail_Headers);
					if($rcd == false){
						$Status = -1;
					}
				}
			}
		}
	}
}
	
header("Location:BBS001.php");
?>