/** ******************************************************************************* * * 入試検索結果一覧(イベント検索より分離) * * PHP versions 4 * * @author M.INOUE * @date 2007/7/10 * @copyright 2004 Acqures, Inc. * ******************************************************************************* */ //ini_set("display_errors","1"); //ini_set('error_reporting', E_ALL); /*------------------------------------------------------------------------------*/ //2011/11/1 学校名から検索を追加 /*------------------------------------------------------------------------------*/ require_once("../../common/php/inc_kensaku.php"); /** *------------------------------------------------------------------------------ // セッション開始 *------------------------------------------------------------------------------ */ require_once("../../search_event/common_acq_evt/inc_session.php"); /** *------------------------------------------------------------------------------ * 共通ファイルのインクルード *------------------------------------------------------------------------------ */ // 共通ファイルのインクルード require_once("../../search_event/common_acq_evt/inc_common_function.php"); require_once("../../search_event/common_acq_evt/inc_common_value.php"); require_once("../../search_event/common_acq_evt/inc_common_db_info.php"); require_once("../common/inc_set_array.php"); require_once("../../search_event/inc_event_keitou_bunya_form.php"); require_once("../../search_event/bus_entry/inc_cart.php"); require_once("../../search_event/inc_gakkoushokai_url.php"); //20090331 追加 学校紹介年度対応 //検索分野の変更20101216 require_once("../../search_school/class/inc_common_value_array.php"); //$bunya_array = &unserialize(BUNYA_FORM); //分野 //mb_convert_variables ($enc,$from_enc,$bunya_array); //分野 /** *------------------------------------------------------------------------------ * 初期設定 *------------------------------------------------------------------------------ */ // 1ページの表示件数 $max_search_list_size = 20; // 最大参加リスト件数 $max_cart_item_list_size = 50; $from_enc = "EUC-JP"; $enc = "UTF-8"; mb_convert_variables ($enc,$from_enc,$keitou_bunya_array); mb_convert_variables ($enc,$from_enc,$event_shurui_kubun_array); mb_convert_variables ($enc,$from_enc,$gakkou_kubun_array); mb_convert_variables ($enc,$from_enc,$event_area_array); mb_convert_variables ($enc,$from_enc,$date_week_array); $last_month = date('Ym',mktime(0,0,0,date("m")+24,date("d"),date("Y"))); $next_month = date('Ym',mktime(0,0,0,date("m")+1,date("d"),date("Y"))); //日付が入っているか $day_search = false; //------------------------------------------------------------------------------ // パラメータをURLにつける //------------------------------------------------------------------------------ if(count($_POST) > 0 || $_GET['evtsc_event_shurui_kubun'] || $_GET['add_act'] || $_GET['add_pid']){ //始めりの日付年月 if($_POST['evtsc_from_yyyymm'] != ""){ $head_str_array[] = "f1-".trim($_POST['evtsc_from_yyyymm']); } //始まりの日付 日 if($_POST['evtsc_from_dd'] != ""){ $head_str_array[] = "f2-".trim($_POST['evtsc_from_dd']); } //終わりの日付年月 if($_POST['evtsc_to_yyyymm'] != ""){ $head_str_array[] = "t1-".trim($_POST['evtsc_to_yyyymm']); } //終わりの日付 日 if($_POST['evtsc_to_dd'] != ""){ $head_str_array[] = "t2-".trim($_POST['evtsc_to_dd']); } //年 if($_POST['evtsc_year'] != ""){ $head_str_array[] = "y-".trim($_POST['evtsc_year']); } //月 if($_POST['evtsc_month'] != ""){ $head_str_array[] = "m-".trim($_POST['evtsc_month']); } //日 if($_POST['evtsc_day'] != ""){ $head_str_array[] = "d-".trim($_POST['evtsc_day']); } //エリア if($_POST['evtsc_area'] != ""){ $head_str_array[] = "a-".trim($_POST['evtsc_area']); } //イベント種類 //if($_REQUEST['evtsc_event_shurui_kubun'] !=""){ // $shurui_parme_array[] = htmlspecialchars(trim($_REQUEST['evtsc_event_shurui_kubun'])); //} //if(count($shurui_parme_array) > 0){ // $head_str_array[] = "s-".implode("-",$shurui_parme_array); //} //分野 if(is_array($_REQUEST['evtsc_keitou_bunya_list'])){ foreach($_REQUEST['evtsc_keitou_bunya_list'] as $var){ if($var !=""){ $bunya_parme_array[] = htmlspecialchars(trim($var)); } } } else { if($_POST['evtsc_keitou_bunya_list'] !=""){ $bunya_parme_array[] = htmlspecialchars(trim($_POST['evtsc_keitou_bunya_list'])); } } if(count($bunya_parme_array) > 0){ $head_str_array[] = "b-".implode("-",$bunya_parme_array); } //バス見学会NO if($_POST["evtsc_bus_course_no"]!=""){ $head_str_array[] = "n-".htmlspecialchars(trim($_POST['evtsc_bus_course_no'])); } //学校名 if($_POST['evtsc_schoolname']){ $head_str_array[] = "kn-".urlencode($_POST['evtsc_schoolname']); } //カート if($_REQUEST["add_pid"]!=""){ $head_str_array[] = "ap-".htmlspecialchars(trim($_REQUEST['add_pid'])); } //カートの動作 if($_REQUEST["add_act"]!=""){ $head_str_array[] = "aa-".htmlspecialchars(trim($_REQUEST['add_act'])); } //カートの場所リスト if($_POST["add_bus_place_list"]!=""){ $head_str_array[] = "apl-".htmlspecialchars(trim($_POST['add_bus_place_list'])); } //カートの分野リスト if($_POST["add_bus_bunya_list"]!=""){ $head_str_array[] = "apb-".htmlspecialchars(trim($_POST['add_bus_bunya_list'])); } //カートの保護者リスト if($_POST["add_bus_hogosha_list"]!=""){ $head_str_array[] = "aph-".htmlspecialchars(trim($_POST['add_bus_hogosha_list'])); } //カレンダーの週に日付リスト if($_POST['evtsc_day_list'] !=""){ $array = explode_and_clean(",", htmlspecialchars(trim($_POST["evtsc_day_list"]))); $y = htmlspecialchars(trim($_POST["evtsc_year"])); $m = htmlspecialchars(trim($_POST["evtsc_month"])); $f1 = sprintf("%04d%02d", $y, $m); $f2 = sprintf("%02d", min($array)); $t1 = sprintf("%04d%02d", $y, $m); $t2 = sprintf("%02d", max($array)); $head_str_array[] = "f1-".$f1; $head_str_array[] = "f2-".$f2; $head_str_array[] = "t1-".$t1; $head_str_array[] = "t2-".$t2; } //ページ数 if($_REQUEST['p'] !="" && $_REQUEST['p'] != 0){ $head_str_array[] = "p-".$_REQUEST['p']."/"; } else { //unset($_SESSION); } if(count($head_str_array) > 0){ $head_str = implode("/",$head_str_array)."/"; } $head_str_url = "https://".$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME'])."/".$head_str; //$head_str_url = "http://".$_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']."/".$head_str; header("Location:". $head_str_url); exit(); } //データを$_REQUESTに入れ直す $get_array = explode("/" , $_SERVER['PATH_INFO']); foreach($get_array as $key => $value){ if($value !="" ){ $v_array = explode("-",htmlspecialchars(trim($value))); //都道府県番号 if($v_array[0] == "a"){ $_REQUEST["evtsc_area"] = $v_array[1]; $hidden_html_array['evtsc_area']= "\n"; $area_name = $event_area_array[$v_array[1]]; $jouken_html_array[] = $event_area_array[$v_array[1]]; $parm_array['a'] = $value; } //ベント種類 //if($v_array[0] == "s"){ // for($i=1;$i<=count($v_array)-1;$i++){ // if(is_numeric($v_array[$i])){ // $_REQUEST["evtsc_event_shurui_kubun"][] = $v_array[$i]; // $hidden_html_array['evtsc_event_shurui_kubun'] .= "\n"; // $jouken_html_array[] = $event_shurui_kubun_array[$v_array[$i]]; // } // } // $parm_array['s'] = $value; // } //分野 if($v_array[0] == "b"){ for($i=1;$i<=count($v_array)-1;$i++){ if(is_numeric($v_array[$i])){ $_REQUEST["evtsc_keitou_bunya_list"][] = $v_array[$i]; $hidden_html_array['evtsc_keitou_bunya_list'] .= "\n"; $jouken_html_array[] = $keitou_bunya_array[$v_array[$i]]; } } $bunya_co = array("人文科学系","社会科学系","教育系","理学系","工学系","医療系","農学系","家政系","体育系","芸術系","その他"); $bunya_t = array("人文科学系","社会科学・教育系","工学系","医療系","家政系","美術系","体育系","その他"); $bunya_sp = array("建築・インテリア","整備系","IT・情報工学系","理美容系","食物系","ビジネス系","公務員","語学・観光系","服飾系","音楽系","動物系","環境系","看護・医療系","教育・福祉系","スポーツ系","デザイン系","その他"); $bunya_other = array("工業技術","調理系","動物系","ビューティ ファッション","医療 ヒーリング","IT ビジネス","スポーツ 環境","音楽","その他"); if(count($bunya_co) == count(array_intersect($bunya_co, $jouken_html_array))){ $jouken_html_array = array_filter(str_replace($bunya_co, "", $jouken_html_array)); $jouken_html_array[] = "大学全系統"; } else if(count($bunya_t) == count(array_intersect($bunya_t, $jouken_html_array))){ $jouken_html_array = array_filter(str_replace($bunya_t, "", $jouken_html_array)); $jouken_html_array[] = "短期大学全系統"; } else if(count($bunya_sp) == count(array_intersect($bunya_sp, $jouken_html_array))){ $jouken_html_array = array_filter(str_replace($bunya_sp, "", $jouken_html_array)); $jouken_html_array[] = "専門学校全分野"; } else if(count($bunya_other) == count(array_intersect($bunya_other, $jouken_html_array))){ $jouken_html_array = array_filter(str_replace($bunya_other, "", $jouken_html_array)); $jouken_html_array[] = "その他教育機関全分野"; } $parm_array['b'] = $value; } //始まりの年月 if($v_array[0] == "f1"){ $_REQUEST["evtsc_from_yyyymm"] = $v_array[1]; $hidden_html_array['evtsc_from_yyyymm']= "\n"; $parm_array['f1'] = $value; } //始まりの日にち if($v_array[0] == "f2"){ $_REQUEST["evtsc_from_dd"] = sprintf('%02d',$v_array[1]); $hidden_html_array['evtsc_from_dd'] = "\n"; $parm_array['f2'] = $value; } //終わりの日にち if($v_array[0] == "t1"){ $_REQUEST["evtsc_to_yyyymm"] = $v_array[1]; $hidden_html_array['evtsc_to_yyyymm'] = "\n"; $parm_array['t1'] = $value; } //終わりの日にち if($v_array[0] == "t2"){ $_REQUEST["evtsc_to_dd"] = sprintf('%02d',$v_array[1]); $hidden_html_array['evtsc_to_dd'] = "\n"; $parm_array['t2'] = $value; } //年 if($v_array[0] == "y"){ $_REQUEST["evtsc_year"] = $v_array[1]; $hidden_html_array['evtsc_year'] = "\n"; $parm_array['y'] = $value; } //月 if($v_array[0] == "m"){ $_REQUEST["evtsc_month"] = $v_array[1]; $hidden_html_array['evtsc_month']= "\n"; $parm_array['m'] = $value; } //日 if($v_array[0] == "d"){ $_REQUEST["evtsc_day"] = $v_array[1]; $hidden_html_array['evtsc_day'] = "\n"; $parm_array['d'] = $value; } //バス見学会コースNO if($v_array[0] == "n"){ $_REQUEST["evtsc_bus_course_no"] = $v_array[1]; $hidden_html_array['evtsc_bus_course_no'] = "\n"; $parm_array['n'] = $value; } //キーワード if($v_array[0] == "kn"){ if($v_array[1] !=""){ //echo mb_detect_encoding($v_array[1]).$v_array[1]; //$_REQUEST["evtsc_schoolname"] = cnv_ssstring(urldecode($v_array[1]),$enc); $_REQUEST["evtsc_schoolname"] = urldecode($v_array[1]); } $parm_array['kn'] = "kn-".urldecode($_REQUEST["evtsc_schoolname"]); } //カート系 if($v_array[0] == "ap"){ $_REQUEST["add_pid"] = $v_array[1]; } //カートの動作 if($v_array[0] == "aa"){ $_REQUEST["add_act"] = $v_array[1]; } //カートの場所リスト if($v_array[0] == "apl"){ $_REQUEST["add_bus_place_list"] = $v_array[1]; } //カートの場所リスト if($v_array[0] == "apb"){ $_REQUEST["add_bus_bunya_list"] = $v_array[1]; } //カートの場所リスト if($v_array[0] == "aph"){ $_REQUEST["add_bus_hogosha_list"] = $v_array[1]; } //ページ数 if($v_array[0] == "p"){ $_REQUEST["page_no"] = intval($v_array[1]); $hidden_html_array['page_no'] = "\n"; //$parm_array['p'] = $value; } } } //パレメータ /*$param = preg_replace("/p-([0-9]+)\//i","",$_SERVER['PATH_INFO']); $param = preg_replace("/aa-([a-z_]+)\//i","",$param); $param = preg_replace("/ap-([0-9,]+)\//i","",$param); $param = str_replace("event_list.php","",$param); if($param == ""){ $param = "/"; }*/ $param = ""; if(count($parm_array)){ $param = "/".implode("/",$parm_array)."/"; } /** *------------------------------------------------------------------------------ * POST / GET 変数の受け取り *------------------------------------------------------------------------------ */ //----------------------- // 検索フォームからの入力 //----------------------- // 制御系 $page_no = trim($_REQUEST["page_no"]); // カート系 $add_pid = htmlspecialchars(trim($_REQUEST["add_pid"])); $add_act = htmlspecialchars(trim($_REQUEST["add_act"]));// カートの動作(なし:カートに追加、del:カートから削除) $add_bus_place_list = htmlspecialchars(trim($_REQUEST["add_bus_place_list"])); $add_bus_bunya_list = htmlspecialchars(trim($_REQUEST["add_bus_bunya_list"])); $add_bus_hogosha_list = htmlspecialchars(trim($_REQUEST["add_bus_hogosha_list"])); // 検索条件 $evtsc_year = htmlspecialchars(trim($_REQUEST["evtsc_year"])); $evtsc_month = htmlspecialchars(trim($_REQUEST["evtsc_month"])); $evtsc_day = htmlspecialchars(trim($_REQUEST["evtsc_day"])); $evtsc_day_list = htmlspecialchars(trim($_REQUEST["evtsc_day_list"])); $evtsc_from_yyyymm = htmlspecialchars(trim($_REQUEST["evtsc_from_yyyymm"])); $evtsc_from_dd = htmlspecialchars(trim($_REQUEST["evtsc_from_dd"])); $evtsc_to_yyyymm = htmlspecialchars(trim($_REQUEST["evtsc_to_yyyymm"])); $evtsc_to_dd = htmlspecialchars(trim($_REQUEST["evtsc_to_dd"])); $evtsc_area = htmlspecialchars(trim($_REQUEST["evtsc_area"])); $evtsc_bus_course_no = htmlspecialchars(trim($_REQUEST["evtsc_bus_course_no"])); $evtsc_schoolname = strip_tags(trim(cnv_ssstring($_REQUEST["evtsc_schoolname"],$enc))); // 検索条件(配列) $evtsc_event_shurui_kubun_array = $_REQUEST["evtsc_event_shurui_kubun"]; if (is_array($evtsc_event_shurui_kubun_array) == true) { foreach($evtsc_event_shurui_kubun_array as $key => $value) { $evtsc_event_shurui_kubun_array[$key] = htmlspecialchars(trim($value)); } } $evtsc_keitou_bunya_list_array = $_REQUEST["evtsc_keitou_bunya_list"]; if (is_array($evtsc_keitou_bunya_list_array) == true) { foreach($evtsc_keitou_bunya_list_array as $key => $value) { $evtsc_keitou_bunya_list_array[$key] = htmlspecialchars(trim($value)); } } /** *------------------------------------------------------------------------------ * POST / GET 変数の加工 *------------------------------------------------------------------------------ */ // POSTではなくセッション変数を使用する(もし改ページ処理を行なった場合、もしくはバス参加リストに入れた場合) /*if (($page_no >"") || ($add_pid > "") || ($add_act > "")) { $evtsc_year = $_SESSION["ss_evtsc_year"]; $evtsc_month = $_SESSION["ss_evtsc_month"]; $evtsc_day = $_SESSION["ss_evtsc_day"]; $evtsc_day_list = $_SESSION["ss_evtsc_day_list"]; $evtsc_from_yyyymm = $_SESSION["ss_evtsc_from_yyyymm"]; $evtsc_from_dd = $_SESSION["ss_evtsc_from_dd"]; $evtsc_to_yyyymm = $_SESSION["ss_evtsc_to_yyyymm"]; $evtsc_to_dd = $_SESSION["ss_evtsc_to_dd"]; $evtsc_area = $_SESSION["ss_evtsc_area"]; $evtsc_event_shurui_kubun_array = $_SESSION["ss_evtsc_event_shurui_kubun_array"]; $evtsc_keitou_bunya_list_array = $_SESSION["ss_evtsc_keitou_bunya_list_array"]; $evtsc_bus_course_no = $_SESSION["ss_evtsc_bus_course_no"]; }*/ // POSTではなくセッション変数を使用する(もしバス参加リストに入れた場合) if (($add_pid > "") || ($add_act > "")) { $page_no = $_SESSION["ss_evtsc_page_no"]; } // 初回は page_no を受け取れないので 0 をセットする if ($page_no == "") { $page_no = 0; } // カート系。add_pid は array の key となり、誤って NULL 文字が GET で渡された時に誤動作するため、NULL をクリアする。 $add_pid = str_replace("\0","",$add_pid); // カレンダーの日付が選択された場合は、FROMとTOに選択された日付をセットする。 if ($evtsc_day > 0) { $evtsc_from_yyyymm = sprintf("%04d%02d", $evtsc_year, $evtsc_month); $evtsc_from_dd = sprintf("%02d", $evtsc_day); $evtsc_to_yyyymm = sprintf("%04d%02d", $evtsc_year, $evtsc_month); $evtsc_to_dd = sprintf("%02d", $evtsc_day); } // カレンダーの週が選択された場合は、FROMに週の始めの日を、TOに週の終わりの日をセットする。 if ($evtsc_day_list > "") { $wk_evtsc_day_list_array = explode_and_clean(",", $evtsc_day_list); $evtsc_from_yyyymm = sprintf("%04d%02d", $evtsc_year, $evtsc_month); $evtsc_from_dd = sprintf("%02d", min($wk_evtsc_day_list_array)); $evtsc_to_yyyymm = sprintf("%04d%02d", $evtsc_year, $evtsc_month); $evtsc_to_dd = sprintf("%02d", max($wk_evtsc_day_list_array)); } //FROM と TOに年月のみで日付の指定がなかった場合 if($evtsc_from_yyyymm && !$evtsc_from_dd){ $evtsc_from_dd = '01'; if(date("Ymd") > $evtsc_from_yyyymm.$evtsc_from_dd){ $evtsc_from_dd = date("d"); } } if($evtsc_to_yyyymm && !$evtsc_to_dd){ $t_yyyy = substr($evtsc_to_yyyymm ,0,4); $t_mm = substr($evtsc_to_yyyymm ,-2); $evtsc_to_dd = date("d",mktime(0, 0, 0, $t_mm+1 ,0 , $t_yyyy)); } // 系統分やを配列からセミコロン区切りにシリアライズする。 $evtsc_keitou_bunya_list_serialize = ""; if (is_array($evtsc_keitou_bunya_list_array) == true) { foreach($evtsc_keitou_bunya_list_array as $key => $value) { $evtsc_keitou_bunya_list_serialize .= htmlspecialchars(trim($value)).";"; } } //hiddenに収める if($evtsc_from_yyyymm){ $hidden_html_array['evtsc_from_yyyymm'] = "\n"; } if($evtsc_from_dd){ $hidden_html_array['evtsc_from_dd'] = "\n"; } if($evtsc_to_yyyymm){ $hidden_html_array['evtsc_to_yyyymm'] = "\n"; } if($evtsc_to_dd){ $hidden_html_array['evtsc_to_dd'] = "\n"; } //hiddenをまとめる if(count($hidden_html_array) > 0){ $hidden_html = implode("",$hidden_html_array); } /** *------------------------------------------------------------------------------ * 検索条件をセッション変数に保管 *------------------------------------------------------------------------------ */ // 検索条件 $_SESSION["ss_evtsc_year"] = $evtsc_year; $_SESSION["ss_evtsc_month"] = $evtsc_month; $_SESSION["ss_evtsc_day"] = $evtsc_day; $_SESSION["ss_evtsc_day_list"] = $evtsc_day_list; $_SESSION["ss_evtsc_from_yyyymm"] = $evtsc_from_yyyymm; $_SESSION["ss_evtsc_from_dd"] = $evtsc_from_dd; $_SESSION["ss_evtsc_to_yyyymm"] = $evtsc_to_yyyymm; $_SESSION["ss_evtsc_to_dd"] = $evtsc_to_dd; $_SESSION["ss_evtsc_area"] = $evtsc_area; $_SESSION["ss_evtsc_event_shurui_kubun_array"] = $evtsc_event_shurui_kubun_array; $_SESSION["ss_evtsc_keitou_bunya_list_array"] = $evtsc_keitou_bunya_list_array; $_SESSION["ss_evtsc_keitou_bunya_list_serialize"] = $evtsc_keitou_bunya_list_serialize; $_SESSION["ss_evtsc_bus_course_no"] = $evtsc_bus_course_no; $_SESSION["ss_evtsc_schoolname"] = $evtsc_schoolname; // 制御系 $_SESSION["ss_evtsc_page_no"] = $page_no; //hiddenをセッションで保持 if($hidden_html){ $_SESSION['hidden'] = $hidden_html; } else { $_SESSION['hidden'] = ""; } /** *------------------------------------------------------------------------------ * DB接続 *------------------------------------------------------------------------------ */ require_once("../../search_event/common_acq_evt/inc_common_db_connect.php"); require_once("../../../lib/common/cnct_sch.php"); $conn2 = dbConnect_schooldb(); /** *------------------------------------------------------------------------------ * カート処理 *------------------------------------------------------------------------------ */ // カートの内容をセッション変数から作業用変数にセットする。 $cart_detail = $_SESSION["ss_cart_detail"]; // カートを操作する。 $cart_detail = act_cart($cart_detail, $add_act, $add_pid, $add_bus_place_list, $add_bus_bunya_list,$add_bus_hogosha_list); //$cart_detail = act_cart($cart_detail, $add_act, $add_pid, $add_bus_place_list, $add_bus_bunya_list); // カートのエラーチェック $cart_chk_value_array = chk_cart($conn, $cart_detail, $event_area_array); // セッション変数に最新のカートの中身をセットする。 $_SESSION["ss_cart_detail"] = $cart_detail; /** *------------------------------------------------------------------------------ * データ取得用のSQL文(WHERE句)を作成する *------------------------------------------------------------------------------ */ // ページ開始時のレコード開始件数 $page_limit_start = $page_no * $max_search_list_size; //------------------- // SQLのWHERE句を作成 //------------------- // 日付(FROM) if (strlen($evtsc_from_dd) > 0) { $sql_kensaku_jyouken1 = " (d.evt_edt_kaisai_date >= '{$evtsc_from_yyyymm}{$evtsc_from_dd}')"; $day_search = true; } else { $sql_kensaku_jyouken1 = " (1=1)"; } // 日付(TO) if (strlen($evtsc_to_dd) > 0) { $sql_kensaku_jyouken2 = " (d.evt_edt_kaisai_date <= '{$evtsc_to_yyyymm}{$evtsc_to_dd}')"; $day_search = true; } else { $sql_kensaku_jyouken2 = " (1=1)"; } //日付の設定 if($day_search == false){ $evtsc_from_yyyymm = date("Ym"); $evtsc_from_dd = date("d"); $evtsc_to_yyyymm = date("Ym", mktime(0, 0, 0, date("m")+1, 1, date("Y"))); $evtsc_to_dd = date("d"); //$evtsc_to_yyyymm = ""; //$evtsc_to_dd = ""; //日付の設定がなければ今日から全部にする //$sql_kensaku_jyouken1 = " (d.evt_edt_kaisai_date >= '{$evtsc_from_yyyymm}{$evtsc_from_dd}')"; //$sql_kensaku_jyouken2 = " (1=1)"; //日付の設定がなければ今日から全部にする $sql_kensaku_jyouken1 = " (d.evt_edt_kaisai_date >= '{$evtsc_from_yyyymm}{$evtsc_from_dd}')"; $sql_kensaku_jyouken2 = " (d.evt_edt_kaisai_date <= '{$evtsc_to_yyyymm}{$evtsc_to_dd}')"; } // エリア if (strlen($evtsc_area) > 0) { if ($evtsc_area == "A1") { $sql_kensaku_jyouken3 = " (e.evt_pref_code = '01')"; } elseif ($evtsc_area == "A2") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('01','02','03','04','05','06','07') )"; } elseif ($evtsc_area == "A3") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('08','09','10','11','12','13','14') )"; } elseif ($evtsc_area == "A4") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('19','15','20') )"; } elseif ($evtsc_area == "A5") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('21','22','23','24') )"; } elseif ($evtsc_area == "A6") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('16','17','18') )"; } elseif ($evtsc_area == "A7") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('16','17','18','25','26','27','28','29','30') )"; } elseif ($evtsc_area == "A8") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('31','32','33','34','35','36','37','38','39') )"; } elseif ($evtsc_area == "A9") { $sql_kensaku_jyouken3 = " (e.evt_pref_code IN ('40','41','42','43','45','46','47') )"; } else { $sql_kensaku_jyouken3 = " (e.evt_pref_code = '{$evtsc_area}')"; } } else { $sql_kensaku_jyouken3 = " (1=1)"; } // イベント種類区分 if (count($evtsc_event_shurui_kubun_array) > 0) { $wk_shurui_kubun_first_flag = false; foreach($evtsc_event_shurui_kubun_array as $key => $value) { if ($wk_shurui_kubun_first_flag == false) { $sql_kensaku_jyouken4 .= " ( (e.evt_event_shurui_kubun = '{$value}')"; $wk_shurui_kubun_first_flag = true; } else { $sql_kensaku_jyouken4 .= " OR (e.evt_event_shurui_kubun = '{$value}')"; } } $sql_kensaku_jyouken4 .= " )"; } else { $sql_kensaku_jyouken4 = " (1=1)"; } $sql_kensaku_jyouken4 = " (e.evt_event_shurui_kubun = '3')"; // 学問系統・分野 if (count($evtsc_keitou_bunya_list_array) > 0) { $wk_keitou_bunya_first_flag = false; foreach($evtsc_keitou_bunya_list_array as $key => $value) { if ($wk_keitou_bunya_first_flag == false) { if ($value=="0610"){ $value="0410"; } $sql_kensaku_jyouken5 .= " ( (e.evt_keitou_bunya_list like '%{$value};%')"; $wk_keitou_bunya_first_flag = true; } else { if ($value=="0610"){ $value="0410"; } $sql_kensaku_jyouken5 .= " OR (e.evt_keitou_bunya_list like '%{$value};%')"; } } $sql_kensaku_jyouken5 .= " )"; if(is_array($evtsc_event_shurui_kubun_array)){ if(array_search(3,$evtsc_event_shurui_kubun_array)!==false){ $sql_kubun_array[3]= 3; } if(array_search(4,$evtsc_event_shurui_kubun_array)!==false){ $sql_kubun_array[4]= 4; } if(array_search(1,$evtsc_event_shurui_kubun_array)!==false){ $sql_kubun_array2[1]= 1; } if(array_search(2,$evtsc_event_shurui_kubun_array)!==false){ $sql_kubun_array2[2]= 2; } if(count($evtsc_event_shurui_kubun_array) == 0){ $sql_kubun_array[3]= 3; $sql_kubun_array[4]= 4; $sql_kubun_array2[1]= 1; $sql_kubun_array2[2]= 2; } } //さんぽう主催のイベント //if(count($sql_kubun_array2) > 0){ //$kubun_sql2 = " AND ( e.evt_event_shurui_kubun in (".implode(",",$sql_kubun_array2).") ) "; //} else { $kubun_sql2 = ""; //} //学校主催のイベント・入試 $kubun_sql3 = ""; //if(count($sql_kubun_array) > 0){ //schooldb用の分野SQL文 foreach($evtsc_keitou_bunya_list_array as $k => $v){ $tempbunya = GetBunyaSql($v); if ($tempbunya !=""){ $bunya_sql_array[] = $tempbunya; } } $bunya_sql = implode(" OR ",$bunya_sql_array); if ($bunya_sql!=""){ }else{ $bunya_sql=" (1=1)"; } //schooldbから該当する学校IDを取り出す $sql = "SELECT REPLACE (SUBSTRING_INDEX( ad_url, '/', -2 ) ,'/','') as gakkou_id,m_code FROM schooldb WHERE ad_url LIKE '%html%' AND ({$bunya_sql}) "; $res = mysql_query($sql, $conn2) or die("(1).$db_err_message".$sql.mysql_error()); while($row = mysql_fetch_array($res, MYSQL_ASSOC)){ $sql_gakkou_id_array[$row['m_code']] = $row['gakkou_id']; } //IDがあったら検索する if(count($sql_gakkou_id_array) > 0){ $kubun_sql3 = " evt_gakkou_id in (".implode(",",$sql_gakkou_id_array).") AND e.evt_event_shurui_kubun in (3)"; } else { $kubun_sql3 = " OR ( evt_gakkou_id in (1) )"; //ない場合 } //} $sql_kensaku_jyouken5 = "( {$kubun_sql3} )"; } else { $sql_kensaku_jyouken5 = " (1=1)"; } //echo $sql_kensaku_jyouken5; // バス見学会コースNo. if (strlen($evtsc_bus_course_no) > 0) { $sql_kensaku_jyouken6 = " (e.evt_bus_course_no like '%{$evtsc_bus_course_no}%')"; } else { $sql_kensaku_jyouken6 = " (1=1)"; } // 学校名 if ($evtsc_schoolname) { //キーワードをスペースで区切る $sc_array = preg_split("/ | /", $evtsc_schoolname); foreach($sc_array as $var){ $sql_array[] = "( ( evt_title_gakkou_name like '%".mysql_real_escape_string(mb_convert_encoding($var,$from_enc,$enc))."%' ) OR ( evt_bus_school_name_list like '%".mysql_real_escape_string(mb_convert_encoding($var,$from_enc,$enc))."%') ) "; } if(count($sql_array)){ $sql_kensaku_jyouken7 = " ( ".implode(" AND ",$sql_array)." ) "; } } else { $sql_kensaku_jyouken7 = " (1=1)"; } // 当日以降のみを検索対象とする。 $sql_kensaku_jyouken99 = " (d.evt_edt_kaisai_date >= '".date("Ymd")."')"; /** *------------------------------------------------------------------------------ * データ取得 *------------------------------------------------------------------------------ */ //学校紹介に契約がある学校の学校ID /*$sql = "SELECT m_code,REPLACE(SUBSTRING_INDEX(ad_url, '/', -2),'/','') as gakkou_id FROM schooldb WHERE ad_url LIKE '%html%'"; $res = mysql_query($sql, $conn) or die("(1).$db_err_message".$limit_sql); while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $gakkou_id[$row['m_code']] = $row['gakkou_id']; }*/ // データ取得 $all_sql = " SELECT DISTINCT d.evt_edt_event_id, e.* FROM evt_event_date_mt AS d LEFT JOIN evt_event_mt AS e ON d.evt_edt_event_id = e.evt_event_id WHERE ( evt_koukai_flag = '1' AND evt_mobile_kubun = 0 AND {$sql_kensaku_jyouken1} AND {$sql_kensaku_jyouken2} AND {$sql_kensaku_jyouken3} AND {$sql_kensaku_jyouken4} AND {$sql_kensaku_jyouken5} AND {$sql_kensaku_jyouken6} AND {$sql_kensaku_jyouken7} AND {$sql_kensaku_jyouken99} ) ORDER BY e.evt_osusume_flag DESC, e.evt_hyouji_jun DESC, e.evt_event_shurui_kubun, d.evt_edt_kaisai_date, e.evt_pref_code"; $limit_sql = " {$all_sql} LIMIT {$page_limit_start}, {$max_search_list_size}"; $res = mysql_query($limit_sql, $conn) or die("(1).$db_err_message".$limit_sql); // 結果を配列に格納する。 while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { mb_convert_variables ($enc,$from_enc,$row); $evt_event_id[] = $row["evt_event_id"]; // イベントID $evt_event_shurui_kubun[] = $row["evt_event_shurui_kubun"]; // イベント種類区分 $evt_koukai_flag[] = $row["evt_koukai_flag"]; // 公開フラグ $evt_osusume_flag[] = $row["evt_osusume_flag"]; // オススメフラグ $evt_hyouji_jun[] = $row["evt_hyouji_jun"]; // 表示順 $evt_keitou_bunya_list[] = $row["evt_keitou_bunya_list"]; // 学問系統・分野リスト $evt_bus_course_no[] = $row["evt_bus_course_no"]; // バス見学会コースNo $evt_pref_code[] = $row["evt_pref_code"]; // 開催都道府県コード $evt_city_name[] = $row["evt_city_name"]; // 開催都市 $evt_title_gakkou_name[] = $row["evt_title_gakkou_name"]; // イベントタイトル・学校名 $evt_place_name[] = $row["evt_place_name"]; // 会場名 $evt_address[] = $row["evt_address"]; // 会場住所・所在地住所 $evt_date_list[] = $row["evt_date_list"]; // 日程リスト $evt_bus_school_name_list[] = $row["evt_bus_school_name_list"]; // 見学する学校リスト $evt_bus_place_list[] = $row["evt_bus_place_list"]; // 集合場所リスト $evt_bus_bunya_list[] = $row["evt_bus_bunya_list"]; // 選択分野リスト $evt_toiawase[] = $row["evt_toiawase"]; // お問い合わせ先 $evt_map_img_path[] = $row["evt_map_img_path"]; // 会場地図画像パス $evt_pdf_path[] = $row["evt_pdf_path"]; // PDFファイルパス $evt_list_img_path[] = $row["evt_list_img_path"]; // 一覧画像パス $evt_gakkou_id[] = $row["evt_gakkou_id"]; // 学校ID $evt_bikou[] = $row["evt_bikou"]; // 備考 $evt_sanka_gakkou_list[] = $row["evt_sanka_gakkou_list"]; // 参加学校一覧 $evt_saishuu_koushin_timestamp[] = $row["evt_saishuu_koushin_timestamp"]; // イベント最終データ更新日時 } /** *------------------------------------------------------------------------------ * 件数、ページ数の計算 *------------------------------------------------------------------------------ */ // 同じ条件で検索して件数を把握する。1ページの最大表示数を超えていたらメッセージを表示するため。 $res = mysql_query($all_sql, $conn) or die("(2).$db_err_message".$all_sql); // 対象件数を取得する $taishou_count = mysql_num_rows($res); // 最大ページ数を計算する $max_page_no = ceil($taishou_count / $max_search_list_size) - 1; // 表示に使用する「最大件数」を計算する。 $disp_start_record = $page_limit_start + 1; $disp_end_record = $page_limit_start + $max_search_list_size; if ($disp_end_record > $taishou_count) { $disp_end_record = $taishou_count; } // 前ページ、次ページ数を計算する $prev_page = $page_no - 1; $next_page = $page_no + 1; //-------------------------- //ページのリンクを作成する。 //-------------------------- $disp_page_link = ""; //-------------------------------------------------------------------------- // ページング表示 //-------------------------------------------------------------------------- // 総ページ数 $total_page = ceil($taishou_count / $max_search_list_size); //共通URL $common_url = "https://{$_SERVER['SERVER_NAME']}".dirname($_SERVER['SCRIPT_NAME']); //現在のページから表示するリストを読み込む 前へリンク if(isset($page_no) && $page_no > 0){ $page_no = $page_no; if($page_no == 1){ //0ページ場合はページ番号不要 $prev_link = "前へ"; } else { $pp = $page_no-1; $prev_link = "前へ"; } } else { $page_no = 0; $prev_link = ""; } // リストに表示している件数を計算する 次へリンク if ($total_page != $page_no+1) { $pp = $page_no+1; $next_link = "次へ"; } else { $next_link = ""; } //各ページリンク $pageno_link = ""; $pageno_link_max = "20"; $pageno_link_start = floor(($page_no)/$pageno_link_max) * $pageno_link_max; $pageno_link_end = $pageno_link_start + $pageno_link_max; if($pageno_link_end > $total_page){ $pageno_link_end = $total_page; } if($total_page > 0){ for($i=0;$i<$total_page;$i++){ if($page_no == $i){ $pageno_link_all_array[] = sprintf("%d",$i+1); } else { if($i == 0){ //0ページ場合はページ番号不要 $pageno_link_all_array[] = "1"; } else { $ii = $i+1; $pageno_link_all_array[] = "{$ii}"; } } } if(count($pageno_link_all_array) > 0){ for($i=$pageno_link_start;$i<$pageno_link_end;$i++){ $pageno_link_array[] = $pageno_link_all_array[$i]; } if(count($pageno_link_array) > 1){ $pageno_link = implode("|",$pageno_link_array); } else { $pageno_link = $pageno_link_array[0]; } } } // リストに出力する最初と終わりの件数を設定する $current_start_no = $page_no * $max_search_list_size; $current_end_no = $current_start_no + $max_search_list_size -1 ; if ($current_end_no > $taishou_count) { $current_end_no = $taishou_count - 1; } // 表示用の件数を作成する。 $disp_taishou_count = $taishou_count; $disp_current_start_no = $current_start_no+1; $disp_current_end_no = $current_end_no+1; $end_no = $current_start_no + $max_search_list_size; if($taishou_count < $end_no){ $end_no = $taishou_count; } if($taishou_count > 0){ $disp_page_link = sprintf("
全部で 件検索されました
掲載している入試内容や日程が変更になる場合があります。最新の入試情報は各学校の公式サイトをご確認ください。
{$event_area_array[$evt_pref_code[$i]]} | {$evt_title_gakkou_name[$i]} |
|
所在地 ・ お問合せ ・ 入試日程 | ||
---|---|---|
{$disp_nyuushi_list_img} |
所在地 : {$evt_address[$i]} お問合せ : {$evt_toiawase[$i]} 入試日程 : {$disp_nittei} |