"; for($j= $min_int ;$j < $max_int;$j += $interval) { $sel = ($j == $selected) ? "selected" : ""; print ""; } if (is_null($selected) && $Space) { print ""; } print ""; } //■プルダウン作成(文字型) function Pulldown_create_chara($width ,$name_,$value ,$value_v,$selected) { print ""; } //■フォルダ内のファイル削除($dirは該当ファイルがあるディレクトリの絶対パス) function deleteData ( $dir ) { if ( $dirHandle = opendir ( $dir )) { while ( false !== ( $fileName = readdir ( $dirHandle ) ) ) { if ( $fileName != "." && $fileName != ".." ) { unlink ( $dir.$fileName ); } } closedir ( $dirHandle ); } } //■フォルダ内のファイル移動($dir1元ディレクトリ,$dir2移動先ディレクトリ) function moveData ( $dir1,$dir2 ) { if ( $dirHandle = opendir ( $dir1 )) { while ( false !== ( $fileName = readdir ( $dirHandle ) ) ) { if ( $fileName != "." && $fileName != ".." ) { rename($dir1.$fileName , $dir2.$fileName); } } closedir ( $dirHandle ); } } //■元画像からサムネイル画像の作成 function ThumbnailMake($tmp_dir_,$in_pict,$out_pict,$x_size,$y_size) { list($width, $hight) = getimagesize($tmp_dir_ .$in_pict); // 元の画像名を指定してサイズを取得 $baseImage = imagecreatefromjpeg($tmp_dir_.$in_pict); // 元の画像から新しい画像を作る準備 $image = imagecreatetruecolor($x_size, $y_size); // サイズを指定して新しい画像のキャンバスを作成 // 画像のコピーと伸縮 imagecopyresampled($image, $baseImage, 0, 0, 0, 0, $x_size, $y_size, $width, $hight); // コピーした画像を出力する $name_replace = str_replace("." ,"_s.",$in_pict); $out_pict = $out_pict. $name_replace; imagejpeg($image , $out_pict); } //■ファイルのダウンロードリンク作成(テキスト・画像サムネイル) //DlLinkMake(リンクタイプ[1:テキスト、2:画像],データid,ファイルのパス1,ファイルのパス2,表内の位置) function DlLinkMake($dl_type_,$id_,$save_dir_,$dir_path_,$chkbox_flag) { //$data_ct_ = count($data_name_); $dir = $save_dir_ .$id_ .$dir_path_; // print ""; if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if ( $file != "." && $file != ".." ) { $time_list[] = filemtime($dir .$file); //ソート用にファイル時刻を取得 $file_list[] = $file; } } closedir($dh); array_multisort($time_list,SORT_ASC,$file_list); } $f_count = count($file_list); for($fct=0;$fct < $f_count;$fct++) { if($dl_type_ == 1) { $updateDate = filemtime($dir .$file); $updateDate = $time_list[$fct]; if($chkbox_flag) print ""; print "" .$file_list[$fct] ."
"; } else { $thum_name = "./inspection/" .$id_ ."/pict_s/" .str_replace("." ,"_s." ,$file_list[$fct]); if($chkbox_flag) print ""; print ""; print "" .$file_list[$fct] .""; print "  "; } } } // print " "; } //------------------------------------------------------------------------------------------------- //初期値設定 //------------------------------------------------------------------------------------------------- //■現在時刻の取得・設定 $now_time = time() + 86400; $now_time_date = date("Y年m月d日 H時i分",$now_time); $reg_date_time = $now_time; $date_y = date("Y",$now_time); $date_m = date("m",$now_time ); $date_d = date("d",$now_time); $time_h = date("H",$now_time); $time_m = date("i",$now_time); //■アップロード時の一時保存パス $tmp_record_dir = "/www/geye/tmp_record/"; $tmp_pict_dir = "/www/geye/tmp_pict/"; $tmp_pict_dir_s = "/www/geye/tmp_pict_s/"; //■アップロード時の保存パス $save_dir = "/www/geye/inspection/"; $record_dir = "/record/"; $pict_dir = "/pict/"; $pict_dir_s = "/pict_s/"; $delete_dir = "/delete/"; $upload_pict_dir = "/www/geye/pict/"; //■zip保存用 $zip_dir = "/geye/"; //■POST・GETデータの出力 EXTRACT($_GET); EXTRACT($_POST); //print_r($_GET); //print_r($_POST); //------------------------------------------------------------------------------------------------- // 接続設定(サーバ/データベース/ユーザ/パスワード) //------------------------------------------------------------------------------------------------- $sv = "192.168.100.153"; $dbname = "geye"; $user = "postgres"; $pass = "postgres"; $conn = pg_connect("host=$sv dbname=$dbname user=$user password=$pass") or die("接続エラー"); //------------------------------------------------------------------------------------------------- // 調書に使用する項目リストをDBから取得 //------------------------------------------------------------------------------------------------- $sql_item = "SELECT * FROM check_item_name ORDER BY id;"; $res_item = pg_query($conn,$sql_item); $count_item = pg_num_rows($res_item); //$row_item = pg_fetch_array($res_e,0); //------------------------------------------------------------------------------------------------- //検査項目のリストをDBから取得(プルダウン表示用) //------------------------------------------------------------------------------------------------- //■DBから最新データの抽出 $sql_i = "SELECT DISTINCT(inspection_id),inspection_name FROM check_item_name2 WHERE del_flag ='false' ORDER BY inspection_id;"; $res_i = pg_query($conn,$sql_i); $ct_i = pg_num_rows($res_i); $inspection_id_ = array(); $inspection_name_ = array(); for($z=0;$z < $ct_i;$z++) { $row = pg_fetch_array($res_i,$z); $id_ = $row['inspection_id']; $inspection_id_[$id_] = $row['inspection_id']; $inspection_name_[$id_] = $row['inspection_name']; } //------------------------------------------------------------------------------------------------- // アップロードされた画像の振り分け //------------------------------------------------------------------------------------------------- if($_POST['pictupload']) { $sql_p = "SELECT * FROM inspection_record WHERE del_flag=false ORDER BY scheduled_date desc;"; $res_p = pg_query($conn,$sql_p); $count_p = pg_num_rows($res_p); //対象データの期間(デフォルト3時間) $range_1 = 10800; //秒 $range_2 = 10800; //秒 for($p=0;$p<$count_p;$p++) { $row_p = pg_fetch_array($res_p,$p); $id = $row_p['id']; $schedul_unix = strtotime($row_p['scheduled_date']); $schedul_date = date("Ymd" ,$schedul_unix); //希望日から*時間前 $past_unix = $schedul_unix - $range_1; $past_date = date("Ymd" ,$past_unix); //希望日から*時間後 $future_unix = $schedul_unix + $range_2; $future_date = date("Ymd" ,$future_unix); //今日のフォルダ画像を検索 $upload_pict_dir_ = $upload_pict_dir .$schedul_date; //print $upload_pict_dir_ ."
"; if ($dirHandle = opendir ($upload_pict_dir_)) { while ( false !== ( $fileName = readdir ( $dirHandle))) { if ( $fileName != "." && $fileName != ".." ) { //ファイルの更新時間 $file_datetime = filemtime($upload_pict_dir_ ."/" .$fileName); //print $id ."_" .$past_unix ."_" .$file_datetime ."_" .$future_unix ."
"; if(($past_unix < $file_datetime) && ($file_datetime < $future_unix)) { //print $id ."_" .$past_unix ."_" .$file_datetime ."_" .$future_unix ."
"; copy($upload_pict_dir_ ."/" .$fileName , $save_dir .$id .$pict_dir.$fileName ); ThumbnailMake($save_dir .$id .$pict_dir,$fileName,$save_dir .$id .$pict_dir_s ,77,75); } } } closedir ( $dirHandle ); } if($schedul_date != $past_date) { print "前日"; //前日のフォルダ画像を検索 $upload_pict_dir_ = $upload_pict_dir .$past_date; //print $upload_pict_dir_ ."
"; if ($dirHandle = opendir ($upload_pict_dir_)) { while ( false !== ( $fileName = readdir ( $dirHandle))) { if ( $fileName != "." && $fileName != ".." ) { //ファイルの更新時間 $file_datetime = filemtime($upload_pict_dir_ ."/" .$fileName); //print $id ."_" .$past_unix ."_" .$file_datetime ."_" .$future_unix ."
"; if(($past_unix < $file_datetime) && ($file_datetime < $future_unix)) { //print $id ."_" .$past_unix ."_" .$file_datetime ."_" .$future_unix ."
"; copy($upload_pict_dir_ ."/" .$fileName , $save_dir .$id .$pict_dir.$fileName ); ThumbnailMake($save_dir .$id .$pict_dir,$fileName,$save_dir .$id .$pict_dir_s ,77,75); } } } closedir ( $dirHandle ); } } if($schedul_date != $future_date) { print "後日"; //後日のフォルダ画像を検索 $upload_pict_dir_ = $upload_pict_dir .$future_date; //print $upload_pict_dir_ ."
"; if ($dirHandle = opendir ($upload_pict_dir_)) { while ( false !== ( $fileName = readdir ( $dirHandle))) { if ( $fileName != "." && $fileName != ".." ) { //ファイルの更新時間 $file_datetime = filemtime($upload_pict_dir_ ."/" .$fileName); if(($past_unix < $file_datetime) && ($file_datetime < $future_unix)) { //print $id ."_" .$past_unix ."_" .$file_datetime ."_" .$future_unix ."
"; copy($upload_pict_dir_ ."/" .$fileName , $save_dir .$id .$pict_dir.$fileName ); ThumbnailMake($save_dir .$id .$pict_dir,$fileName,$save_dir .$id .$pict_dir_s ,77,75); } } } closedir ( $dirHandle ); } } } } //------------------------------------------------------------------------------------------------- // フォームアクション処理(削除・ダウンロード) //------------------------------------------------------------------------------------------------- //■データの削除処理 if($del) { $DelSql = "UPDATE inspection_record SET "; $DelSql .= "del_flag = 'TRUE' "; $DelSql .= " WHERE id IN (" .$del .");"; if (!($resDelSql = pg_query($conn, $DelSql))) { print pg_last_error() ."
"; // throw new Exception("データ取得に失敗
". $DelArea. "
". pg_last_error(). "
"); } } //■ダウンロード処理 if($file_dl) { //データidの分割 $id_ = explode(",",$file_dl); $id_count_ = count($id_); //zip用ファイルの初期化(削除) $cmd_del = "rm -Rf " .$zip_dir ."*"; exec($cmd_del); //deleteData($zip_dir); for($k = 0;$k < $id_count_ ;$k++) { //ZIP用のフォルダの作成 $zip_sub_dir = $zip_dir.$id_[$k]; mkdir($zip_sub_dir , 0777); $zip_sub_dir_rec = $zip_sub_dir ."/record/"; $zip_sub_dir_pict = $zip_sub_dir ."/pict/"; mkdir($zip_sub_dir_rec , 0777); mkdir($zip_sub_dir_pict , 0777); //対象ファイルをコピー $cmd_1 = "cp -a " .$save_dir .$id_[$k] .$record_dir ."/*" ." " .$zip_sub_dir_rec; $cmd_2 = "cp -a " .$save_dir .$id_[$k] .$pict_dir ."/*" ." " .$zip_sub_dir_pict; exec($cmd_1); exec($cmd_2); } //zipの作成 $file_name_date = date("YmdHis" ,time()); $zip_path = $zip_dir .$file_name_date .".zip"; //$zip_path = $id_[$k] .".zip"; //print $zip_path; $cmd_3 = "zip -r " .$zip_path ." /geye/*"; exec($cmd_3); //print $cmd_3 ; $file_name = $file_name_date .".zip"; header('Location: https://penta-02.ptgw.net/geye/download.php?u=3&f=' .$file_name ); } //------------------------------------------------------------------------------------------------- // 画面上部に画面更新ボタンの配置 //------------------------------------------------------------------------------------------------- print ""; print ""; print ""; //print ""; print "
"; print "
"; print ""; print "
"; print "
"; //print "
"; //print ""; //print "
"; //print "
"; print "
"; //------------------------------------------------------------------------------------------------- // 新規申請・編集処理 //------------------------------------------------------------------------------------------------- //■■新規申請 if($_POST['request']) { print "【新規申請】
"; if($_POST['send_address']) { //現在のデータ登録数を取得(ファイル名の頭につける) //$sql_max = "SELECT max(id) FROM inspection_record;"; //$res_max = pg_query($conn,$sql_max); //$row_max = pg_fetch_array($res_max,0); //$id = $row_max[0] + 1; //一時フォルダ内のファイルの削除(調書・画像) deleteData ($tmp_record_dir); deleteData ($tmp_pict_dir); deleteData ($tmp_pict_dir_s); //アップロードファイルの確認(一時的に保存) //①調書ファイルがあれば処理実行 if(isset($_FILES['upfile_record'])) { // アップロードされたファイル件を処理 for($i = 0; $i < count($_FILES['upfile_record']['name']); $i++ ) { // アップロードされたファイルか検査 if(is_uploaded_file($_FILES['upfile_record']['tmp_name'][$i])) { $record_file_name = $_FILES['upfile_record']['name'][$i]; move_uploaded_file($_FILES['upfile_record']['tmp_name'][$i], "./tmp_record/" .$record_file_name); } } } //②画像ファイルがあれば処理実行 if(isset($_FILES['upfile_pict'])) { // アップロードされたファイル件を処理 for($j = 0; $j < count($_FILES['upfile_pict']['name']); $j++ ) { // アップロードされたファイルか検査 if(is_uploaded_file($_FILES['upfile_pict']['tmp_name'][$j])) { //ファイル名をナンバリングする //$jj = $j+1; //$pict_file_name = $id ."_" .$jj ."_" .$_FILES['upfile_pict']['name'][$j]; $pict_file_name = $_FILES['upfile_pict']['name'][$j]; //データベース登録用(ファイル名:aaaa.pdf,bbbb.pdf・・・) //$pict_regist_name .= ($j >= 1) ? "," :""; //$pict_regist_name .= $pict_file_name; // ファイルをお好みの場所に移動 $tmp_pict_path = $tmp_pict_dir .$pict_file_name; move_uploaded_file($_FILES['upfile_pict']['tmp_name'][$j],$tmp_pict_path); //サムネイル画像作成 ThumbnailMake($tmp_pict_dir,$pict_file_name,$tmp_pict_dir_s,77,75); } } } print "以下の内容で申請します。よろしいですか?"; print "
"; print "※申請先メールアドレスへメールが送信されます"; print ""; print ""; print ""; print ""; print ""; print ""; $make_date = $_POST['date_y_'] ."年" .$_POST['date_m_'] ."月" .$_POST['date_d_'] ."日"; $make_date .= $_POST['time_h_'] ."時" .$_POST['time_m_'] ."分"; $mk_date_reg = mktime($_POST['time_h_'],$_POST['time_m_'],0,$_POST['date_m_'],$_POST['date_d_'],$_POST['date_y_']); //検査項目IDを変数へ $inspection_id = $_POST['inspection_name_reg']; $inspection_name = $inspection_name_[$inspection_id]; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
申請先メールアドレス" .$_POST['send_address'] ."
希望日" .$make_date ."
場所" .$_POST['place_reg'] ."
工種" .$_POST['construction_reg'] ."
検査項目" .$inspection_name ."
監理技術者" .$_POST['supervision_engineer_reg'] ."
記事" .$_POST['memo_reg'] ."
"; print "
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; // print ""; // print ""; print ""; print "
"; } else { print "正しいメールアドレスを入力してください。"; } } //■■編集処理 else if($_POST['edit_id'] && (!$_POST['edit_cancel'])) { $edit_id_ = ($_POST['edit_id']) ? $_POST['edit_id'] : $edit_id; //print $edit_id_; $sql_e = "SELECT * FROM inspection_record WHERE id =" .$edit_id_ ." ORDER BY scheduled_date DESC;"; $res_e = pg_query($conn,$sql_e); $row_e = pg_fetch_array($res_e,0); $scheduled_date = $row_e['scheduled_date']; //希望日 $date_y = date("Y",strtotime($scheduled_date)); $date_m = date("m",strtotime($scheduled_date)); $date_d = date("d",strtotime($scheduled_date)); $time_h = date("H",strtotime($scheduled_date)); $time_m = date("i",strtotime($scheduled_date)); $place = $row_e['place']; //場所 $construction = $row_e['construction']; //工種 $inspection_name = $row_e['inspection_name']; //検査項目 $supervision_engineer = $row_e['supervision_engineer']; //監理技術者 $confirmer = $row_e['confirmer']; //確認者 if($row_e['implementation_date']) { $implementation_date = $row_e['implementation_date']; //実施日 $date2_y = date("Y",strtotime($implementation_date)); $date2_m = date("m",strtotime($implementation_date)); $date2_d = date("d",strtotime($implementation_date)); $time2_h = date("H",strtotime($implementation_date)); $time2_m = date("i",strtotime($implementation_date)); } $memo = $row_e['memo']; //記事(メモ) $updatetime = $row_e['updatetime']; //更新日時(最終編集日時) $regdatetime = $row_e['updatetime']; //登録日時(申請日時) $chk_flag = $row_e['chk_flag']; //確認フラグ(true:確認済み、false:未確認) $del_flag = $row_e['del_flag']; //削除フラグ(true:無効データ[削除状態]、false:有効データ) $request_status = $row_e['request_status']; //立会承認(0:未承認、1:承認済、2:差戻、3:メール未送信) $mail_address = $row_e['mail_address']; //メールアドレス(承認先) $inspection_id = $row_e['inspection_id']; //①保存を押した場合 if(($_POST['edit_save']) || ($_POST['edit_request'])) { //アップロードファイルの確認(一時的に保存) //①調書ファイルがあれば処理実行 if(isset($_FILES['upfile_record_e'])) { $date_time = date("Y-m-d H:i:s",time()); // アップロードされたファイル件を処理 for($i = 0; $i < count($_FILES['upfile_record_e']['name']); $i++ ) { // アップロードされたファイルか検査 if(is_uploaded_file($_FILES['upfile_record_e']['tmp_name'][$i])) { $record_file_name = $_FILES['upfile_record_e']['name'][$i]; move_uploaded_file($_FILES['upfile_record_e']['tmp_name'][$i], $save_dir .$edit_id_ .$record_dir .$record_file_name); /* //調書の確認リストをデータベースへ登録 //ファイルの更新時間をリストNoとする $list_no = filemtime($save_dir .$edit_id_ .$record_dir .$record_file_name); //検査項目名から確認項目を取得 $sql_item = "SELECT * FROM check_item_name2 WHERE spefiction_id = " .$edit_id_ ." ORDER BY sort_no;"; $res_item = pg_query($conn,$sql_item); $count_item = pg_num_rows($res_item); for($ict = 0;$ict < $count_item;$ict++) { $row_item = pg_fetch_array($res_item,$ict); //データの登録 $sql_list_ins = "INSERT INTO record_check_list(data_no, inspefiction_id,list_no ,item_no,sort_no,regdatetime)"; $sql_list_ins .= "VALUES ("; $sql_list_ins .= $edit_id_ .","; $sql_list_ins .= $row_item[0] .","; $sql_list_ins .= $list_no .","; $sql_list_ins .= $row_item[0] .","; $sql_list_ins .= $row_item[3] .","; $sql_list_ins .= "'" .$date_time ."')"; //$res_list_ins = pg_query($conn,$sql_list_ins); $res_list_ins = pg_query($conn,$sql_list_ins) or die(pg_last_error() ."
" .$sql_list_ins); } */ } } } //②画像ファイルがあれば処理実行 if(isset($_FILES['upfile_pict_e'])) { // アップロードされたファイル件を処理 for($j = 0; $j < count($_FILES['upfile_pict_e']['name']); $j++ ) { // アップロードされたファイルか検査 if(is_uploaded_file($_FILES['upfile_pict_e']['tmp_name'][$j])) { $pict_file_name = $_FILES['upfile_pict_e']['name'][$j]; // ファイルをお好みの場所に移動 $tmp_pict_path = $save_dir .$edit_id_ .$pict_dir .$pict_file_name; move_uploaded_file($_FILES['upfile_pict_e']['tmp_name'][$j],$tmp_pict_path); //サムネイル画像作成 ThumbnailMake($save_dir .$edit_id_ .$pict_dir,$pict_file_name,$save_dir .$edit_id_ .$pict_dir_s,77,75); } } } //検査項目IDを変数へ $inspection_id = $_POST['inspection_name_reg']; $inspection_name = $inspection_name_[$inspection_id]; $scheduled_date_reg = date("Y/m/d H:i:s", mktime($time_h_,$time_m_ ,0,$date_m_,$date_d_,$date_y_)); //$scheduled_date_reg = date("Y/m/d H:i:s", strtotime(scheduled_date)); if($time2_h_ && $time2_m_ && $date2_m_ && $date2_d_ && $date2_y_) { $implementation_date_reg = date("Y/m/d H:i:s" ,mktime($time2_h_,$time2_m_ ,0,$date2_m_,$date2_d_,$date2_y_)); } $sql_up = "UPDATE inspection_record SET "; $sql_up .= ($scheduled_date_reg) ? "scheduled_date='" .$scheduled_date_reg ."',":""; $sql_up .= "place='" .$place_reg."',"; $sql_up .= "construction='" .$construction_reg ."',"; $sql_up .= "inspection_name='" .$inspection_name ."',"; $sql_up .= "inspection_id='" .$inspection_id ."',"; $sql_up .= ($supervision_engineer_reg) ? "supervision_engineer='" .$supervision_engineer_reg ."',":""; $sql_up .= ($confirmer_reg) ? "confirmer='" .$confirmer_reg ."',":""; $sql_up .= ($implementation_date_reg) ? "implementation_date='" .$implementation_date_reg ."',":""; //$sql_up .= ($record_regist_name) ? "record='" .$record_regist_name ."',":""; //$sql_up .= ($pict_regist_name) ? "pict='" .$pict_regist_name ."',":""; $sql_up .= "memo='" .$memo_reg ."',"; $sql_up .= ($mail_address_reg) ? "mail_address='" .$mail_address_reg ."',":""; $sql_up .= "updatetime= '".date("Y-m-d H:i:s",time()) ."'"; $sql_up .= " WHERE id=" .$edit_id_ .";"; $res_up = pg_query($conn,$sql_up); //★内容更新 $sql_e = "SELECT * FROM inspection_record WHERE id =" .$edit_id_ ." ORDER BY scheduled_date DESC;"; $res_e = pg_query($conn,$sql_e); $row_e = pg_fetch_array($res_e,0); $scheduled_date = $row_e['scheduled_date']; //希望日 $date_y = date("Y",strtotime($scheduled_date)); $date_m = date("m",strtotime($scheduled_date)); $date_d = date("d",strtotime($scheduled_date)); $time_h = date("H",strtotime($scheduled_date)); $time_m = date("i",strtotime($scheduled_date)); $place = $row_e['place']; //場所 $construction = $row_e['construction']; //工種 $inspection_name = $row_e['inspection_name']; //検査項目 $supervision_engineer = $row_e['supervision_engineer']; //監理技術者 $confirmer = $row_e['confirmer']; //確認者 if($row_e['implementation_date']) { $implementation_date = $row_e['implementation_date']; //実施日 $date2_y = date("Y",strtotime($implementation_date)); $date2_m = date("m",strtotime($implementation_date)); $date2_d = date("d",strtotime($implementation_date)); $time2_h = date("H",strtotime($implementation_date)); $time2_m = date("i",strtotime($implementation_date)); } //$record = $row_e['record']; //調書(ファイル名1,ファイル名2,・・・) //$pict = $row_e['pict']; //写真(ファイル名1,ファイル名2,・・・) $memo = $row_e['memo']; //記事(メモ) $updatetime = $row_e['updatetime']; //更新日時(最終編集日時) $regdatetime = $row_e['updatetime']; //登録日時(申請日時) $chk_flag = $row_e['chk_flag']; //確認フラグ(true:確認済み、false:未確認) $del_flag = $row_e['del_flag']; //削除フラグ(true:無効データ[削除状態]、false:有効データ) $request_status = $row_e['request_status']; //立会承認(0:未承認、1:承認済、2:差戻、3:メール未送信) $mail_address = $row_e['mail_address']; //メールアドレス(承認先) $inspection_id = $row_e['inspection_id']; //調書のファイル名を分割・カウント //$record_ = explode(",",$record); //$record_ct = count($record_); //写真のファイル名を分割・カウント //$pict_ = explode(",",$pict); //$pict_ct = count($pict_); //■再申請が押された場合 if($_POST['edit_request']) { //承認用URLの作成 $ok_url = "https://penta-02.ptgw.net/geye/data_update.php?id=" .$edit_id_ ."&request=1"; //否認用URLの作成 $ng_url = "https://penta-02.ptgw.net/geye/data_update.php?id=" .$edit_id_ ."&request=2"; //■内部文字エンコーディングを設定 mb_internal_encoding("ISO-2022-JP"); //ヘッダー設定 $header = "From: " ."五洋立会申請" ."" ."\n"; $header .= "Reply-To: " ."五洋立会申請" ."" ."\n"; //$header.= "Cc: " .$send_to1 ."," .$send_to2 ."\n"; //$header.= "Bcc: " ."'blue.puny@gmail.com'" ."\n"; $header .= "Content-Type: text/html;charset=ISO-2022-JP" ."\n"; $header .= "X-Mailer: myphpMail ". phpversion(). "\n"; //件名設定 $Subject = mb_convert_encoding("【立会申請】","ISO-2022-JP","UTF-8"); //本文設定 $message = mb_convert_encoding("※このメールはシステム側から送信しています" ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("以下の内容で立会申請がされました。" ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("承認・差戻を選択してURLをクリックしてください。" ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("選択を誤ってしまった場合は、正しい方をクリックしなおしてください。" ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("[承認]" .$ok_url ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("[差戻]" .$ng_url ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("希望日時 :" .date("Y年m月d日 H時i分" ,($_POST['scheduled_date_reg'])) ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("場所   :" .$_POST['place_reg'] ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("工種   :" .$_POST['construction_inspection_name_regreg'] ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("検査項目 :" .$_POST[''] ."
","ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("監理技術者:" .$_POST['supervision_engineer_reg'],"ISO-2022-JP","UTF-8"); $message = wordwrap($message, 70); //送信する if(mb_send_mail($_POST['mail_address_reg'], $Subject , $message,$header)) { print ""; } } } //②削除を押した場合 else if(($_POST['check_rec']) || ($_POST['check_pict'])) { //調書の場合 if($_POST['check_rec']) { $move_path_1 = $save_dir .$edit_id_ .$record_dir; $move_path_2 = $save_dir .$edit_id_ .$delete_dir; $check_rec_ct = count($_POST['check_rec']); if (is_dir($move_path_1)) { if ($dh = opendir($move_path_1)) { while (($file = readdir($dh)) !== false) { for($frc = 0 ;$frc < $check_rec_ct; $frc++) { if(!strcmp($file ,$_POST['check_rec'][$frc])) { rename($move_path_1 .$file , $move_path_2 .$file); } } } closedir($dh); } } print "対象の調書ファイルを削除しました。" ."
"; } //写真の場合 if($_POST['check_pict']) { $move_path_1 = $save_dir .$edit_id_ .$pict_dir; $move_path_2 = $save_dir .$edit_id_ .$delete_dir; $move_path_3 = $save_dir .$edit_id_ .$pict_dir_s; $check_pict_ct = count($_POST['check_pict']); if (is_dir($move_path_1)) { if ($dh = opendir($move_path_1)) { while (($file = readdir($dh)) !== false) { for($frc = 0 ;$frc < $check_pict_ct; $frc++) { if(!strcmp($file ,$_POST['check_pict'][$frc])) { rename($move_path_1 .$file , $move_path_2 .$file); rename($move_path_3 .str_replace("." ,"_s.",$file) , $move_path_2 .$file); } } } closedir($dh); } } print "対象の写真を削除しました。" ."
"; } //■最新データの取得 $sql_e = "SELECT * FROM inspection_record WHERE id =" .$edit_id_ ." ORDER BY scheduled_date DESC;"; $res_e = pg_query($conn,$sql_e); $row_e = pg_fetch_array($res_e,0); $scheduled_date = $row_e['scheduled_date']; //希望日 $date_y = date("Y",strtotime($scheduled_date)); $date_m = date("m",strtotime($scheduled_date)); $date_d = date("d",strtotime($scheduled_date)); $time_h = date("H",strtotime($scheduled_date)); $time_m = date("i",strtotime($scheduled_date)); $place = $row_e['place']; //場所 $construction = $row_e['construction']; //工種 $inspection_name = $row_e['inspection_name']; //検査項目 $inspection_id = $row_e['inspection_id']; //検査項目ID $supervision_engineer = $row_e['supervision_engineer']; //監理技術者 $confirmer = $row_e['confirmer']; //確認者 if($row_e['implementation_date']) { $implementation_date = $row_e['implementation_date']; //実施日 $date2_y = date("Y",strtotime($implementation_date)); $date2_m = date("m",strtotime($implementation_date)); $date2_d = date("d",strtotime($implementation_date)); $time2_h = date("H",strtotime($implementation_date)); $time2_m = date("i",strtotime($implementation_date)); } $memo = $row_e['memo']; //記事(メモ) $updatetime = $row_e['updatetime']; //更新日時(最終編集日時) $regdatetime = $row_e['updatetime']; //登録日時(申請日時) $chk_flag = $row_e['chk_flag']; //確認フラグ(true:確認済み、false:未確認) $del_flag = $row_e['del_flag']; //削除フラグ(true:無効データ[削除状態]、false:有効データ) $request_status = $row_e['request_status']; //立会承認(0:未承認、1:承認済、2:差戻、3:メール未送信) $mail_address = $row_e['mail_address']; //メールアドレス(承認先) } //■申請先メールアドレス //立会承認が"メール未送信"の場合のみ、編集可能 print "【編集中】
"; print "
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; // print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
申請先メールアドレス
希望日"; print Pulldown_create_int(60,"date_y_",2020,2025,1,$date_y,0) ."年"; print Pulldown_create_int(60,"date_m_",1,13,1,$date_m,0) ."月"; print Pulldown_create_int(60,"date_d_",1,32,1,$date_d,0) ."日"; print "
"; print Pulldown_create_int(60,"time_h_",0,24,1,$time_h,0) ."時"; print Pulldown_create_int(60,"time_m_",0,60,10,$time_m,0) ."分"; print "
場所
工種
検査項目"; Pulldown_create_chara(300,'inspection_name_reg',$inspection_id_,$inspection_name_,$inspection_id); print "
監理技術者
確認者
実施日"; print Pulldown_create_int(60,"date2_y_",2020,2025,1,$date2_y,1) ."年"; print Pulldown_create_int(60,"date2_m_",1,13,1,$date2_m,1) ."月"; print Pulldown_create_int(60,"date2_d_",1,32,1,$date2_d,1) ."日"; print "
"; print Pulldown_create_int(60,"time2_h_",0,60,1,$time2_h,1) ."時"; print Pulldown_create_int(60,"time2_m_",0,60,1,$time2_m,1) ."分"; print "
調書"; print "
"; DlLinkMake(1,$edit_id_,$save_dir,$record_dir,1); print "
写真"; print "
"; DlLinkMake(2,$edit_id_,$save_dir,$pict_dir,1); print ""; print "
記事
"; //■再申請ボタンの表示・非表示 //立会承認が"差戻"、"メール未送信"の場合、"再申請"ボタンの表示 if($request_status >= 2) print ""; print ""; print ""; print ""; print "
"; } //■■初期画面(画面更新時) else { print "【新規申請】
"; //--------------------------------------------------------------------------------------------- //●新規申請確認画面で"はい"を選択した場合の処理 if($_POST['sentaku_yes']) { //データの登録 $sql_ins = "INSERT INTO inspection_record(scheduled_date, "; $sql_ins .= ($_POST['place_reg']) ? "place,": ""; $sql_ins .= ($_POST['construction_reg']) ? "construction,": ""; $sql_ins .= ($_POST['inspection_name_reg']) ? "inspection_name,": ""; $sql_ins .= ($_POST['inspection_id_reg']) ? "inspection_id,": ""; $sql_ins .= ($_POST['supervision_engineer_reg']) ? "supervision_engineer,": ""; $sql_ins .= ($_POST['memo_reg']) ? "memo,": ""; $sql_ins .= "updatetime,regdatetime, mail_address) VALUES ("; $sql_ins .= "'" .date("Y-m-d H:i", $_POST['scheduled_date_reg']) ."',"; $sql_ins .= ($_POST['place_reg']) ? "'" .$_POST['place_reg'] ."',": ""; $sql_ins .= ($_POST['construction_reg']) ? "'" .$_POST['construction_reg'] ."',": ""; $sql_ins .= ($_POST['inspection_name_reg']) ? "'" .$_POST['inspection_name_reg'] ."',": ""; $sql_ins .= ($_POST['inspection_id_reg']) ? "'" .$_POST['inspection_id_reg'] ."',": ""; $sql_ins .= ($_POST['supervision_engineer_reg']) ? "'" .$_POST['supervision_engineer_reg'] ."',": ""; $sql_ins .= ($_POST['memo_reg']) ? "'" .$_POST['memo_reg'] ."',": ""; $sql_ins .= "'" .date("Y-m-d H:i", time()) ."',"; $sql_ins .= "'" .date("Y-m-d H:i", time()) ."',"; $sql_ins .= "'" .$_POST['send_address'] ."')"; $res_ins = pg_query($conn,$sql_ins) or die(pg_last_error() ."
" .$sql_ins); //現在のデータ登録数を取得 $sql_max = "SELECT max(id) FROM inspection_record;"; $res_max = pg_query($conn,$sql_max); $row_max = pg_fetch_array($res_max,0); $id = $row_max[0]; /* //調書の確認リストをデータベースへ登録 $date_time = date("Y-m-d H:i:s",time()); if ($dirHandle = opendir ($tmp_record_dir)) { while ( false !== ( $fileName = readdir ( $dirHandle))) { if ( $fileName != "." && $fileName != ".." ) { //ファイルの更新時間をリストNoとする $list_no = filemtime($tmp_record_dir .$fileName); for($ict = 0;$ict < $count_item;$ict++) { $row_item = pg_fetch_array($res_item,$ict); //データの登録 $sql_list_ins = "INSERT INTO record_check_list(data_no, list_no ,item_no,sort_no,regdatetime)"; $sql_list_ins .= "VALUES ("; $sql_list_ins .= $id .","; $sql_list_ins .= $list_no .","; $sql_list_ins .= $row_item[0] .","; $sql_list_ins .= $row_item[3] .","; $sql_list_ins .= "'" .$date_time ."')"; //$res_list_ins = pg_query($conn,$sql_list_ins); $res_list_ins = pg_query($conn,$sql_list_ins) or die(pg_last_error() ."
" .$sql_list_ins); } } } closedir ( $dirHandle ); } */ //一時ファイルを本来アップロードするフォルダへ移動 mkdir($save_dir .$id .$record_dir , 0777,true); mkdir($save_dir .$id .$pict_dir , 0777,true); mkdir($save_dir .$id .$pict_dir_s , 0777,true); mkdir($save_dir .$id ."/delete/" , 0777,true); moveData($tmp_record_dir,$save_dir .$id .$record_dir); moveData($tmp_pict_dir,$save_dir .$id .$pict_dir); moveData($tmp_pict_dir_s,$save_dir .$id .$pict_dir_s); //承認用URLの作成 $ok_url = "https://penta-02.ptgw.net/geye/data_update.php?id=" .$id ."&request=1"; //否認用URLの作成 $ng_url = "https://penta-02.ptgw.net/geye/data_update.php?id=" .$id ."&request=2"; //■内部文字エンコーディングを設定 mb_internal_encoding("ISO-2022-JP"); //ヘッダー設定 $header = "From: " ."五洋立会申請" ."" ."\n"; $header .= "Reply-To: " ."五洋立会申請" ."" ."\n"; //$header.= "Cc: " .$send_to1 ."," .$send_to2 ."\n"; //$header.= "Bcc: " ."'blue.puny@gmail.com'" ."\n"; $header .= "Content-Type: text/html;charset=ISO-2022-JP" ."\n"; $header .= "X-Mailer: myphpMail ". phpversion(). "\n"; //件名設定 $Subject = mb_convert_encoding("【立会申請】","ISO-2022-JP","UTF-8"); //本文設定 $message = mb_convert_encoding("※このメールはシステム側から送信しています" ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("以下の内容で立会申請がされました。" ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("承認・差戻を選択してURLをクリックしてください。" ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("選択を誤ってしまった場合は、正しい方をクリックしなおしてください。" ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("[承認]" .$ok_url ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("[差戻]" .$ng_url ."

" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("希望日時 :" .date("Y年m月d日 H時i分" ,($_POST['scheduled_date_reg'])) ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("場所   :" .$_POST['place_reg'] ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("工種   :" .$_POST['construction_reg'] ."
" ,"ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("検査項目 :" .$_POST['inspection_name_reg'] ."
","ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("監理技術者:" .$_POST['supervision_engineer_reg'] ."
","ISO-2022-JP","UTF-8"); $message .= mb_convert_encoding("記事(備考):" .$_POST['memo_reg'],"ISO-2022-JP","UTF-8"); $message = wordwrap($message, 70); //送信する if(mb_send_mail($_POST['send_address'], $Subject , $message,$header)) { print ""; } } //●新規申請確認画面で"いいえ"を選択した場合の処理 else if($_POST['sentaku_no']) { print ""; } //--------------------------------------------------------------------------------------------- //データの一覧表の作成 //--------------------------------------------------------------------------------------------- //■DBから最新データの抽出 $sql_v = "SELECT * FROM inspection_record WHERE del_flag ='false' ORDER BY id DESC;"; $res_v = pg_query($conn,$sql_v); $ct_v = pg_num_rows($res_v); //■データ表の作成 print "
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; Pulldown_create_chara(300,'inspection_name_reg',$inspection_id_,$inspection_name_,0); print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
申請先メールアドレス
希望日"; print Pulldown_create_int(60,"date_y_",2020,2025,1,$date_y,0) ."年"; print Pulldown_create_int(60,"date_m_",1,13,1,$date_m,0) ."月"; print Pulldown_create_int(60,"date_d_",1,32,1,$date_d,0) ."日"; print "
"; print Pulldown_create_int(60,"time_h_",0,24,1,$time_h,0) ."時"; print Pulldown_create_int(60,"time_m_",0,60,10,$time_m,0) ."分"; print "
場所
工種
検査項目"; //print "
監理技術者
調書
写真
記事
"; print ""; print "
"; print "
"; print "チェック項目の "; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; for($i = 0 ;$i < $ct_v;$i++) { print ""; $row = pg_fetch_array($res_v,$i); $no = $row[0]; $scheduled_date = date("Y/m/d" ,strtotime($row[1])) ."
" .date("H:i" ,strtotime($row[1])); $place = $row[2]; $construction = $row[3]; $inspection_name = $row[4]; $supervision_engineer = $row[5]; $confirmer = $row[6]; $implementation_date = ($row[7]) ? date("Y/m/d" ,strtotime($row[7])) : ""; if($row[13] == 0) { $request_status = "承認待ち"; } else if($row[13] == 1) { $request_status = "承認済"; } else if($row[13] == 2) { $request_status = "差戻"; $request_status .= "
※条件を変えて
再申請して下さい

"; } else { $request_status = "メール送信失敗"; $request_status .= "
※アドレスを確認し
再申請して下さい

"; } $memo = $row[8]; $updatetime = $row[9]; $regdatetime = $row[10]; $chk_flag = ($row[11] === f) ? '--------':'確認済'; print ""; //●チェックボックス print ""; //●ファイルNo print ""; print ""; print ""; //●立会承認 print ""; //●確認状況 print ""; //●希望日 print ""; //●場所 print ""; //●検査項目 print ""; //●工種 print ""; //●監理技術者 print ""; //●確認者 print ""; //●実施日 print ""; print ""; print ""; //●記事 print ""; } print "
CB立会承認確認希望日場所工種検査項目監理技術者確認者実施日調書写真記事
" .$no ."
"; //●編集ボタン print ""; print ""; print "" .$request_status ."" .$chk_flag ." " .$scheduled_date ."" .$place ." " .$construction ." " .$inspection_name ." " .$supervision_engineer ." " .$confirmer ." " .$implementation_date .""; DlLinkMake(1,$no,$save_dir,$record_dir,0); //●調書(ダウンロードリンク表示) print ""; DlLinkMake(2,$no,$save_dir,$pict_dir,0); //●写真の表示 print "" .$memo ." 
"; } ?>