"); //print("管理人宛てメール送信。=".$ret."
"); //print("mailTo = ".$mailTo."
"); } } } //ユーザーへの確認メール送信(From:弊社、To:お客様、BCC:弊社BCC用アドレス MODE:1) //ユーザー宛て送信元アドレス設定 if($aMailItem[$i] == "From"){ $u_mailFrom = $aMailAddress[$i]; } //ユーザー宛て送信元名設定 if($aMailItem[$i] == "FromName"){ $u_mailFromName = $aMailAddress[$i]; } //ユーザー宛てメール送信先アドレス指定 if($aMailItem[$i] == "ToUser"){ //送信先が空白の場合→メール送信 if($aMailAddress[$i] == ""){ for ($j = 0; $j< $line_no; $j++){ //ユーザー入力アドレスを送信先に指定 if($aAttribute[$j] == "MailAddr"){ $u_mailTo = ConvNum($aDataName[$j]); break; } } //ユーザー宛てテキストファイル読み込み LoadMailTmpFile(USER_TXT, $u_Subject, $uMain); //文字列置き換え $u_Main = TxtReplace($uMain); //送信先が空でない場合のみ送信 if($u_mailTo != ""){ //$ret = SendMail($u_mailTo, $u_mailFrom, $u_Subject, $u_Main); //メール送信 $ret = SenduMail($u_mailTo, $u_mailFrom, $aCCArray, $aBCCArray, $u_Subject, $u_Main,$u_mailFromName); CreateLog($u_mailFrom,$u_mailTo,$ret,USER); //print("ret=".$ret."
"); //print("ユーザあてメール送信。"."
"); } //送信先が"0"の場合→メールを送信しない }else if($aMailAddress[$i] == 0){ continue; } } //ユーザー宛てメール送信先アドレス指定 }//for /* print("u_mailTo=".$u_mailTo."
"); print("u_mailFrom=".$u_mailFrom."
"); print("$u_Main".$u_Main."
"); */ /* print("mailTo=".$u_mailTo."
"); print("mailFrom=".$u_mailFrom."
"); print("$m_Main".$m_Main."
"); */ require(FN_HTML); }else{ if(USE_DOUI == "1"){ if($Mode == doui){ require(MF_HTML); //同意する }else if($Mode == doui_deny){ require(DOUI_DENY_HTML); //同意しない }else{ require(DOUI_HTML); //TOP } }else{ require(MF_HTML); } } /*****フッタファイル出力*****/ if(USE_HEAD_FOOT == "1"){ require(FOOT_HTML); } //print("POST_convert18=".i18n_convert($_POST["company"], "SJIS")."
"); //print("POST_convert_encoding=".mb_convert_encoding($_POST["company"], DEF_MB_ENC, $internal_enc)."
"); //print("REQUEST_convert_encoding=".mb_convert_encoding($_REQUEST["company"], DEF_MB_ENC, $internal_enc)."
"); //print("REQUEST_convert18=".i18n_convert($_REQUEST["company"], "SJIS")."
"); //print("REQUEST=".$_REQUEST["companykana"]."
"); //print("aDataName=". $aDataName[0]."
"); /********関数********/ //テキストファイル文字列置き換えメソッド function TxtReplace($Text) { global $line_no,$aFieldName,$aDataName,$aItemName; //テキストファイル本文文字列置き換え //本文文字列変更 $sRet = ""; $ReplaceData = "Anser"; $ReplaceItem = "Item"; for ($i = 0; $i < $line_no; $i++){ $DataWord = $ReplaceData.$i; $ItemWord = $ReplaceItem.$i; //$Text = ReplaceString($Text, $aFieldName[$i], $aDataName[$i]); $Text = ReplaceString($Text, $DataWord, $aDataName[$i]); $Text = ReplaceString($Text, $ItemWord, $aItemName[$i]); } //ユーザー情報文字列置き換え $IPAddr = getenv('REMOTE_ADDR'); $HosNamet = getenv('REMOTE_HOST'); $UserAgent = getenv('HTTP_USER_AGENT'); $Text = ReplaceString($Text,"REMOTE_ADDR",$IPAddr); $Text = ReplaceString($Text,"REMOTE_HOST",$HosNamet); $Text = ReplaceString($Text,"HTTP_USER_AGENT",$UserAgent); $sRet = $Text; return $sRet; } //value取得メソッド function GetItemValueRow($sFieldName) { global $line_no,$aFieldName,$aDataName,$aDefaultValue,$Mode; //$sFieldNameがフィールド名にない場合""を返す $sRet = ""; for ($i = 0; $i < $line_no; $i++){ //$sFieldNameがフィールド名と一致した場合 if($aFieldName[$i] == $sFieldName){ //確認画面表示ではない場合 if($Mode != conf){ //データが空白の場合初期値を返す if($aDataName[$i] == ""){ if($aDefaultValue[$i] != ""){ $sRet = $aDefaultValue[$i]; break; } } } $sRet = $aDataName[$i]; break; } } return $sRet; } //value取得メソッド(HTMLテキスト表示用) function GetItemValue($sFieldName) { global $ver; $sRet =""; if($sFieldName != ""){ $name = GetItemValueRow($sFieldName); if($ver < 410){ // 4.1.0以前の処理 $sRet = htmlspecialchars($name, ENT_QUOTES); }else{ // 4.1.0以降の処理 $sRet = htmlspecialchars($name, ENT_QUOTES,DEF_MB_ENC); } } return $sRet; } //セレクトボックスselected設定メソッド function GetSelected($sFieldName,$Value) { global $line_no,$aFieldName,$aDataName,$aDefaultValue,$Mode; //$sFieldNameがフィールド名にない場合""を返す $sRet = ""; for ($i = 0; $i < $line_no; $i++){ //$sFieldNameがフィールド名と一致した場合 if($aFieldName[$i] == $sFieldName){ if($aDataName[$i] == $Value){ $sRet = "selected"; } //初期表示の場合 '07.08.03追加 if($Mode != conf){ if($aDataName[$i] == ""){ //初期値を返す if($aDefaultValue[$i] == $Value){ $sRet = "selected"; } } } break; } } return $sRet; } //ラジオボタン・チェックボタンchecked設定メソッド function GetChecked($sFieldName,$Value) { global $line_no,$aFieldName,$aDataName,$aDefaultValue,$Mode; //$sFieldNameがフィールド名にない場合""を返す $sRet = ""; for ($i = 0; $i < $line_no; $i++){ //$sFieldNameがフィールド名と一致した場合 if($aFieldName[$i] == $sFieldName){ if($aDataName[$i] == $Value){ $sRet = "checked"; } //初期表示の場合 '07.08.03追加 if($Mode != conf){ if($aDataName[$i] == ""){ //初期値を返す if($aDefaultValue[$i] == $Value){ $sRet = "checked"; } } } break; } } return $sRet; } //エラーメッセージ取得メソッド function GetErrMessage($sFieldName) { global $line_no,$aFieldName,$Msg; //$sFieldNameがフィールド名にない場合err文字を返す $sRet = "err"; for ($i = 0; $i < $line_no; $i++){ //$sFieldNameがフィールド名と一致した場合 if($aFieldName[$i] == $sFieldName){ $sRet = $Msg[$i]; break; } } return $sRet; } //フォームリセット文字列を返すメソッド //初期値が設定されている場合は初期値に戻る(radio,checkbox以外) function GetFormClear(){ global $line_no,$aFieldName,$aAttribute,$aDefaultValue; $sRet = "function FormClear(){"; for ($i=0;$i < $line_no;$i++){ if($aAttribute[$i] == "CheckBox"){ $sRet .= "document.formnew.".$aFieldName[$i].".checked =false;"."\n"; }else if($aAttribute[$i] == "Radio"){ $sRet .= "for(i=0;i< document.formnew.".$aFieldName[$i].".length;i++){"."\n". "document.formnew.".$aFieldName[$i]."[i].checked=false;}"."\n"; }else{ if($aDefaultValue[$i] != ""){ $sRet .= "document.formnew.".$aFieldName[$i].".value = \"".$aDefaultValue[$i]."\";"."\n"; }else{ $sRet .= "document.formnew.".$aFieldName[$i].".value = \"\";"."\n"; } } } $sRet .="}"; return $sRet; } //POSTで受け取ったデータ変換 function ChangeTxtData($Str,$internal_enc){ if($internal_enc == "SJIS" || $internal_enc == "UTF-8"){ //バックスラッシュ取り除き $Str = stripslashes($Str); } if($internal_enc == "EUC-JP"){ //半角ダブル・シングルクォート・\マークを全角に変換 $Str = ConvHanToZen($Str); } //半角カナを全角カナに変換 $Str = KanaHanToZen($Str); //×を「x」に変換(表示で文字化けが発生するため)'08.07.17追加 $Str = ChangeForHtml($Str); return $Str; } //年セレクト(指定した年〜指定した年) function CreateYearSelect($Name,$Value,$Firstyear,$LastYear){ $Ret = ""; return $Ret; } //月セレクト(1〜12月) function CreateMonthSelect($Name,$Value){ $Ret = ""; return $Ret; } //日セレクト(1〜31日) function CreateDaySelect($Name,$Value){ $Ret = ""; return $Ret; } /*** SENDMAILのログを取ります * [注意]親ディレクトリのパーミッションは[0777]or[0775] * にしてください。 ***/ function CreateLog($from,$to,$flg,$per){ $ret = true; $logfile = "mailform.log"; $today = date("Y-m-d H:i:s"); if($flg){ $logString = "$per DATE[$today] FROM[$from] TO[$to]"; }else{ $logString = "SENDERR!! $per DATE[$today] FROM[$from] TO[$to]"; } if(!$flg){ $logString2 = $logString."\nPATH[".realpath("./")."]\n"; $ret = SendMail(ERRSENDMAILTO, ERRSENDMAILTO, "MailFormERR!!", $logString2); } if(!file_exists($logfile)){ touch($logfile); chmod($logfile,0606); } $fd = file($logfile); $cut = count($fd); if($cut>LOGLIMIT){ $fp = fopen($logfile, "r"); $allline = array(); $i=0; while(!feof($fp)) { $line = fgets($fp,4096); array_push($allline,$line); } fclose($fp); $fp = fopen($logfile, "w"); $i=2; while($line = $allline[$i]){ fwrite($fp, $line); $i++; } fclose($fp); } if($fp = fopen($logfile, "a")){ fputs($fp,$logString."\n"); fclose($fp); }else{ $ret = false; } return $ret; } /** * ファイルポインタから行を取得し、CSVフィールドを処理する(PHP5以上の場合使用) * @param resource handle * @param int length * @param string delimiter * @param string enclosure * @return ファイルの終端に達した場合を含み、エラー時にFALSEを返します。 */ function fgetcsv_reg (&$handle, $length = null, $d = ',', $e = '"') { $d = preg_quote($d); $e = preg_quote($e); $_line = ""; while ($eof != true) { $_line .= (empty($length) ? fgets($handle) : fgets($handle, $length)); $itemcnt = preg_match_all('/'.$e.'/', $_line, $dummy); if ($itemcnt % 2 == 0) $eof = true; } $_csv_line = preg_replace('/(?:\r\n|[\r\n])?$/', $d, trim($_line)); $_csv_pattern = '/('.$e.'[^'.$e.']*(?:'.$e.$e.'[^'.$e.']*)*'.$e.'|[^'.$d.']*)'.$d.'/'; preg_match_all($_csv_pattern, $_csv_line, $_csv_matches); $_csv_data = $_csv_matches[1]; for($_csv_i=0;$_csv_i