source: branches/feature-module-update/html/admin/basis/seo.php @ 15080

Revision 15080, 5.3 KB checked in by nanasess, 17 years ago (diff)

svn properties 設定

  • svn:mime-type - application/x-httpd-php; charset=UTF-8
  • svn:keywords - Id
  • Property svn:keywords set to Id
  • Property svn:mime-type set to application/x-httpd-php; charset=UTF-8
Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7require_once("../../require.php");
8require_once(DATA_PATH . "include/page_layout.inc");
9
10class LC_Page {
11    var $arrSession;
12    var $tpl_mode;
13    function LC_Page() {
14        $this->tpl_mainpage = 'basis/seo.tpl';
15        $this->tpl_subnavi = 'basis/subnavi.tpl';
16        $this->tpl_subno = 'seo';
17        $this->tpl_mainno = 'basis';
18        $this->tpl_subtitle = 'SEO管理';
19        global $arrPref;
20        $this->arrPref = $arrPref;
21        global $arrTAXRULE;
22        $this->arrTAXRULE = $arrTAXRULE;
23       
24    }
25}
26
27
28$conn = new SC_DBConn();
29$objPage = new LC_Page();
30$objView = new SC_AdminView();
31$objSess = new SC_Session();
32$objQuery = new SC_Query();
33
34// 認証可否の判定
35sfIsSuccess($objSess);
36
37// データの取得
38$arrPageData = lfgetPageData(" edit_flg = 2 ");
39$objPage->arrPageData = $arrPageData;
40
41$page_id = $_POST['page_id'];
42
43if($_POST['mode'] == "confirm") {
44    // エラーチェック
45    $objPage->arrErr[$page_id] = lfErrorCheck($arrPOST['meta'][$page_id]);
46   
47    // エラーがなければデータを更新
48    if(count($objPage->arrErr[$page_id]) == 0) {
49
50        // 更新データの変換
51        $arrMETA = lfConvertParam($_POST['meta'][$page_id]);
52
53        // 更新データ配列生成
54        $arrUpdData = array($arrMETA['author'], $arrMETA['description'], $arrMETA['keyword'], $page_id);
55        // データ更新
56        lfUpdPageData($arrUpdData);
57    }else{ 
58        // POSTのデータを再表示
59        $arrPageData = lfSetData($arrPageData, $arrPOST['meta']);
60        $objPage->arrPageData = $arrPageData;
61    }
62}
63
64// エラーがなければデータの取得
65if(count($objPage->arrErr[$page_id]) == 0) {
66    // データの取得
67    $arrPageData = lfgetPageData(" edit_flg = 2 ");
68    $objPage->arrPageData = $arrPageData;
69}
70
71// 表示・非表示切り替え
72$arrDisp_flg = array();
73foreach($arrPageData as $key => $val){
74    $arrDisp_flg[$val['page_id']] = $_POST['disp_flg'.$val['page_id']];
75}
76
77$objPage->disp_flg = $arrDisp_flg;
78
79$objView->assignobj($objPage);
80$objView->display(MAIN_FRAME);
81//--------------------------------------------------------------------------------------------------------------------------------------
82/**************************************************************************************************************
83 * 関数名  :lfUpdPageData
84 * 処理内容 :ページレイアウトテーブルにデータ更新を行う
85 * 引数       :更新データ
86 * 戻り値  :更新結果
87 **************************************************************************************************************/
88function lfUpdPageData($arrUpdData = array()){
89    $objQuery = new SC_Query();
90    $sql = "";
91
92    // SQL生成
93    $sql .= " UPDATE ";
94    $sql .= "     dtb_pagelayout ";
95    $sql .= " SET ";
96    $sql .= "     author = ? , ";
97    $sql .= "     description = ? , ";
98    $sql .= "     keyword = ? ";
99    $sql .= " WHERE ";
100    $sql .= "     page_id = ? ";
101    $sql .= " ";
102
103    // SQL実行
104    $ret = $objQuery->query($sql, $arrUpdData);
105   
106    return $ret;   
107}
108
109/**************************************************************************************************************
110 * 関数名  :lfErrorCheck
111 * 処理内容 :入力項目のエラーチェックを行う
112 * 引数       :エラーチェック対象データ
113 * 戻り値  :エラー内容
114 **************************************************************************************************************/
115function lfErrorCheck($array) {
116    $objErr = new SC_CheckError($array);
117   
118    $objErr->doFunc(array("メタタグ:Author", "author", STEXT_LEN), array("MAX_LENGTH_CHECK"));
119    $objErr->doFunc(array("メタタグ:Description", "description", STEXT_LEN), array("MAX_LENGTH_CHECK"));
120    $objErr->doFunc(array("メタタグ:Keywords", "keyword", STEXT_LEN), array("MAX_LENGTH_CHECK"));
121
122    return $objErr->arrErr;
123}
124
125/**************************************************************************************************************
126 * 関数名  :lfSetData
127 * 処理内容 :テンプレート表示データに値をセットする
128 * 引数1  :表示元データ
129 * 引数2  :表示データ
130 * 戻り値  :表示データ
131 **************************************************************************************************************/
132function lfSetData($arrPageData, $arrDispData){
133   
134    foreach($arrPageData as $key => $val){
135        $page_id = $val['page_id'];
136        $arrPageData[$key]['author'] = $arrDispData[$page_id]['author'];
137        $arrPageData[$key]['description'] = $arrDispData[$page_id]['description'];
138        $arrPageData[$key]['keyword'] = $arrDispData[$page_id]['keyword'];
139    }
140   
141    return $arrPageData;
142}
143
144/* 取得文字列の変換 */
145function lfConvertParam($array) {
146    /*
147     *  文字列の変換
148     *  K :  「半角(ハンカク)片仮名」を「全角片仮名」に変換
149     *  C :  「全角ひら仮名」を「全角かた仮名」に変換
150     *  V :  濁点付きの文字を一文字に変換。"K","H"と共に使用します
151     *  n :  「全角」数字を「半角(ハンカク)」に変換
152     *  a :  全角英数字を半角英数字に変換する
153     */
154    // 人物基本情報
155   
156    // スポット商品
157    $arrConvList['author'] = "KVa";
158    $arrConvList['description'] = "KVa";
159    $arrConvList['keyword'] = "KVa";
160
161    // 文字変換
162    foreach ($arrConvList as $key => $val) {
163        // POSTされてきた値のみ変換する。
164        if(isset($array[$key])) {
165            $array[$key] = mb_convert_kana($array[$key] ,$val);
166        }
167    }
168    return $array;
169}
170
171
172?>
Note: See TracBrowser for help on using the repository browser.