豊作祈願) 改 修:2022/11/09 (1)「農産品注文」メニューを「個人向け注文」「業者向け注文」に機能分割するためツールバー改修 改 修:2022/12/19 (1)メニューバーの注文数カウントをJavascript処理へ移行 (2)個人向けと業者向け注文ページを分けるオーダーのため、注文相手を判別する必要あり。 商品購入モーダル<カートに入れる>ボタン押下時に注文元フラグを追加し、 カートページへの戻り先を設定するよう仕様変更。 フラグ:0:業者向け注文、1:個人向け注文 改 修:2023/02/25 (1)デバッグフラグをPHPから取得 改 修:2023/03/21 追加仕様変更により以下の文言変更 (1)「管理者専用サイト」⇒「管理者メニュー」 (2)「管理者専用サイトログイン」⇒「管理者メニューログイン」 (3)「管理者専用サイトログアウト」⇒「管理者メニューログアウト」 改 修:2023/04/25 (1)ヘッダ削除およびパンくずバーの背景色・文字色変更処理をおこなう ・カルーセル部のインクルードおよび実行関数の削除(function_writeCarousel.php、writeCarousel()) ・カルーセル部内で設定していたCSSを分割し読込み(admin-menu.css) ・タイトル設定取得クラスの読み込みを追加(get_mTitle.php) ・パンくずリストの背景色、文字色、行間の書き換え 改 修: *****************************************************************************************/ /*============================================================================= タイムゾーンの設定 =============================================================================*/ date_default_timezone_set('Asia/Tokyo'); /*============================================================================= 自分自身のファイル名取得 =============================================================================*/ $baseFname = basename(__FILE__); /*============================================================================= ライセンス認証クラスの読み込み =============================================================================*/ //ライセンス認証ファイル相対パス $licenseFileName = "./common/license.txt"; include('./common/php/read_binFile.php'); /*============================================================================= MySQL接続クラスの読み込み =============================================================================*/ include('./common/php/baseDbName.php'); /*============================================================================= MySQL接続変数宣言 =============================================================================*/ //データベース物理名を変数に格納 $tbl_name = 'm_producer'; $tbl_name_tInfo = 't_info'; //データベーステーブル名を変数に格納 $tbl_title = '生産者マスターテーブル'; $tbl_title_news = '生産者マスターテーブル'; //データベース種 $KIND = "manage"; //データベースインデックス $IDX = ""; /*============================================================================= MySQL接続クラスの読み込み =============================================================================*/ include('./common/db/comSetDbLib.php'); /*============================================================================= タイトル設定取得クラスの読み込み =============================================================================*/ include('./common/php/get_mTitle.php'); /*============================================================================= セッション開始・初期化 =============================================================================*/ session_time_out($BaseDbName,$tbl_name,$tbl_title,$KIND,$IDX,$baseFname,$debug_flg,$timeout); //セッションタイムアウト(秒)設定 /*============================================================================= Cookie取得 =============================================================================*/ /*-->20221219コメント化 $cookieCnt = 0; $quoteAry = array(); foreach ($_COOKIE as $key => $value) { // $_POSTされた会員情報をkeyを変数名としながら一括代入 if(strpos($key,'gkkhj-') !== false){ //豊作祈願見積依頼クッキー if(isset($_POST['d_id']) && $_POST['d_id'] == ""){ }else if(isset($_POST['d_id']) && $_POST['d_id'] == $key){ if(isset($_COOKIE[$key])) { setcookie($key, '', time() - 1800, '/'); } }else{ $quoteAry[$cookieCnt] = $key."|".htmlspecialchars($_COOKIE[$key], ENT_QUOTES, 'utf-8'); $cookieCnt++; } } } */ /* echo '
'; var_dump($quoteAry); echo ''; */ /*============================================================================= セッションタイムアウト(秒)設定[システム初期値:1440秒(24分)] =============================================================================*/ function session_time_out($BaseDbName,$tbl_name,$tbl_title,$KIND,$IDX,$baseFname,$debug_flg,$timeout = 1440){ session_cache_limiter('nocache'); ini_set('session.gc_maxlifetime', $timeout); session_start(); if(isset($_SESSION['gkkhj_sid'])){ $tmp = $_SESSION; //セッション変数を退避 $_SESSION = array(); //セッション変数を空にする session_destroy(); //セッション破棄 session_id(sha1(uniqid(mt_rand(),true))); //セッションID更新 session_start(); //セッション再開 session_regenerate_id(); $_SESSION = $tmp; //セッション変数引継 if(isset($_SESSION['idle_time']) && $_SESSION['idle_time'] < time()){ $_SESSION = array(); //セッション変数を空にする session_destroy(); //セッション破棄 session_id(sha1(uniqid(mt_rand(),true))); //セッションID更新 session_start(); //セッション再開 session_regenerate_id(); $_SESSION = $tmp; //セッション変数引継 } $_SESSION['idle_time'] = time() + $timeout; //セッションタイムアウトのセッション変数保存 $_SESSION['gkkhj_sid'] = session_id(); //セッションIDのセッション変数保存 //タイトルの取得 //データベース接続 $con = comDbConnect($BaseDbName,$KIND,$IDX); //登録件数取得 $sql = "SELECT producer_name FROM ".$tbl_name; if($res = comDbQuery($con, $sql)){ while ($row=mysqli_fetch_array($res, MYSQLI_ASSOC)){ $_SESSION['producer_name'] = $row['producer_name']; } }else{ $response = "[ERROR]豊作祈願:".$tbl_title."照会失敗:".mysqli_error($con); } //データベースを閉じる comDbClose($con); }else{ if($debug_flg == 0){ //本番時 initSession($baseFname,$timeout); //セッション初期化・終了 }else{ //デバッグ時 //データベース接続 $con = comDbConnect($BaseDbName,$KIND,$IDX); //登録件数取得 $sql = "SELECT producer_name FROM ".$tbl_name; if($res = comDbQuery($con, $sql)){ while ($row=mysqli_fetch_array($res, MYSQLI_ASSOC)){ $_SESSION['producer_name'] = $row['producer_name']; } }else{ $response = "[ERROR]豊作祈願:".$tbl_title."照会失敗:".mysqli_error($con); } //データベースを閉じる comDbClose($con); } } } /*============================================================================= セッション初期化・終了 =============================================================================*/ function initSession($baseFname,$timeout){ //セッションデータの初期化(セッションファイルは破棄されない) foreach($_SESSION as $key){ unset($_SESSION[$key]); } $_SESSION = array(); /*セッションを切断するにはセッションクッキーも削除する (セッション情報だけでなくセッションを破壊する)*/ if(isset($_COOKIE[session_name()])) { setcookie(session_name(), '', time()-$timeout, '/'); } //最終的にセッションを破壊 session_destroy(); } /*============================================================================= メイン処理 =============================================================================*/ //記事番号の取得 if(isset($_GET['id'])){ $selectId = $_GET['id']; }else{ $selectId = null; } //お知らせデータ件数を取得 $infoYearList = getInfoCount($BaseDbName,$KIND,$IDX,$tbl_name_tInfo,$tbl_title_news); //お知らせデータを取得 $infomationList = getInfomation($BaseDbName,$KIND,$IDX,$tbl_name_tInfo,$tbl_title_news,$selectId); /* echo "
"; var_dump($infomationList); echo ""; */ /*============================================================================= MySQL登録されている例会データ件数を取得する関数 =============================================================================*/ function getInfoCount($BaseDbName,$KIND,$IDX,$tbl_name_tInfo,$tbl_title_news){ //戻り値の初期化 $row_cnt = 0; $resList = array(); //データベースの接続 $con = comDbConnect($BaseDbName,$KIND,$IDX); if($con != null){ $toDate = date("Y-m-d H:i:s"); //登録件数取得 $sql = "SELECT performance_year, count(*) AS cnt FROM t_info"; $sql .= " WHERE (statusFlag != 0 AND statusFlag != 99)"; $sql .= " AND ('".$toDate."' >= displayStart_date AND '".$toDate."' <= displayEnd_date)"; $sql .= " GROUP BY performance_year"; $sql .= " ORDER BY id DESC"; //クエリーの実行 if($res = comDbQuery($con, $sql)){ while ($row = mysqli_fetch_assoc($res)) { $resList[$row_cnt] = [ 'performance_year' => $row['performance_year'], 'cnt' => $row['cnt'] ]; $row_cnt++; } /* echo "
"; var_dump($resList); echo ""; */ comDbFreeResult($res); }else{ echo "[ERROR]豊作祈願:".$tbl_title_news."照会失敗:".mysqli_error($con)."