source: branches/dev/html/tb/index.php @ 11952

Revision 11952, 5.6 KB checked in by inoue, 17 years ago (diff)

プロトタイプ

Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7
8require_once("../require.php");
9
10$objQuery = new SC_Query();
11$objFormParam = new SC_FormParam();
12
13// ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯µ¡Ç½¤Î²ÔƯ¾õ¶·¥Á¥§¥Ã¥¯
14$arrSiteControl = $objQuery->select("*", "dtb_site_control", "control_id = ?", array(SITE_CONTROL_TRACKBACK));
15
16// TODO:¶¦ÄÌ´Ø¿ô²½¤¹¤ë
17if (count($arrSiteControl) > 0) {
18    if ($arrSiteControl["control_flg"] == 2) {
19        IfResponseNg();
20    }
21} else {
22    // NG
23    IfResponseNg();
24}
25
26// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
27lfInitParam();
28
29// ¥¨¥ó¥³¡¼¥ÉÀßÄê(¥µ¡¼¥Ð´Ä¶­¤Ë¤è¤Ã¤ÆÊѹ¹)
30$beforeEncode = "auto";
31$afterEncode = mb_internal_encoding();
32
33if (isset($_POST["charset"])) {
34    $beforeEncode = $_POST["charset"];
35} else if (isset($_GET["charset"])) {
36    $beforeEncode = $_GET["charset"];
37}
38
39// POST¥Ç¡¼¥¿¤Î¼èÆÀ¤È¥¨¥ó¥³¡¼¥ÉÊÑ´¹
40
41// ¥Ö¥í¥°Ì¾
42if (isset($_POST["blog_name"])) {
43    $arrData["blog_name"] = trim(mb_convert_encoding($_POST["blog_name"], $afterEncode, $beforeEncode));
44} else if (isset($_GET["blog_name"])) {
45    $arrData["blog_name"] = trim(mb_convert_encoding($_GET["blog_name"], $afterEncode, $beforeEncode));
46}
47
48// ¥Ö¥í¥°µ­»öURL
49if (isset($_POST["url"])) {
50    $arrData["url"] = trim(mb_convert_encoding($_POST["url"], $afterEncode, $beforeEncode));
51} else if (isset($_GET["url"])) {
52    $arrData["url"] = trim(mb_convert_encoding($_GET["url"], $afterEncode, $beforeEncode));
53} else {
54    // TODO:URL¤Ïɬ¿Ü¡¢¤µ¤é¤ËGET¤Ç¤Î¶õ¥¢¥¯¥»¥¹¤òÀ©¸æ(livedoor blog)
55    exit();
56}
57
58// ¥Ö¥í¥°µ­»ö¥¿¥¤¥È¥ë
59if (isset($_POST["title"])) {
60    $arrData["title"] = trim(mb_convert_encoding($_POST["title"], $afterEncode, $beforeEncode));
61} else if (isset($_GET["title"])) {
62    $arrData["title"] = trim(mb_convert_encoding($_GET["title"], $afterEncode, $beforeEncode));
63}
64
65// ¥Ö¥í¥°µ­»öÆâÍÆ
66if (isset($_POST["excerpt"])) {
67    $arrData["excerpt"] = trim(mb_convert_encoding($_POST["excerpt"], $afterEncode, $beforeEncode));
68} else if (isset($_GET["excerpt"])) {
69    $arrData["excerpt"] = trim(mb_convert_encoding($_GET["excerpt"], $afterEncode, $beforeEncode));
70}
71
72$log_path = DATA_PATH . "logs/tb_result.log";
73gfPrintLog("s1--------------------", $log_path);
74foreach($arrData as $key => $val) {
75    gfPrintLog( "\t" . $key . " => " . $val, $log_path);
76}
77gfPrintLog("s1--------------------", $log_path);
78
79$objFormParam->setParam($arrData);
80
81// ÆþÎÏʸ»ú¤ÎÊÑ´¹
82$objFormParam->convParam();
83$arrData = $objFormParam->getHashArray();
84
85// ¥¨¥é¡¼¥Á¥§¥Ã¥¯(¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¤¬À®¤êΩ¤¿¤Ê¤¤¤Î¤Ç¡¢URL°Ê³°¤âɬ¿Ü¤È¤¹¤ë)
86gfPrintLog("--- ERROR CHECK START ---", $log_path);
87$objPage->arrErr = lfCheckError();
88gfPrintLog("--- ERROR CHECK FINISH ---", $log_path);
89gfPrintLog("--- ERROR COUNT : " . count($objPage->arrErr), $log_path);
90
91// ¥¨¥é¡¼¤¬¤Ê¤¤¾ì¹ç¤Ï¥Ç¡¼¥¿¤ò¹¹¿·
92if(count($objPage->arrErr) == 0) {
93   
94    // ¾¦ÉÊ¥³¡¼¥É¤Î¼èÆÀ(GET)
95    if (isset($_GET["pid"])) {
96        $product_id = $_GET["pid"];
97
98        gfPrintLog("--- PRODUCT ID : " . $product_id, $log_path);
99
100        // ¾¦Éʥǡ¼¥¿¤Î¸ºß³Îǧ
101        $table = "dtb_products";
102        $where = "product_id = ?";
103
104        // ¾¦Éʥǡ¼¥¿¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¥Ç¡¼¥¿¤Î¹¹¿·
105        if (sfDataExists($table, $where, array($product_id))) {
106            $arrData["product_id"] = $product_id;
107           
108            // ¥Ç¡¼¥¿¤Î¹¹¿·
109            if (lfEntryTrackBack($arrData) == 1) {
110                IfResponseOk();
111            }
112        } else {
113            gfPrintLog("--- PRODUCT NOT EXISTS : " . $product_id, $log_path);
114        }
115    }
116}
117
118// NG
119IfResponseNg();
120exit();
121
122//----------------------------------------------------------------------------------------------------
123
124/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
125function lfInitParam() {
126    global $objFormParam;
127    $objFormParam->addParam("URL", "url", URL_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
128    $objFormParam->addParam("¥Ö¥í¥°¥¿¥¤¥È¥ë", "blog_name", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
129    $objFormParam->addParam("µ­»ö¥¿¥¤¥È¥ë", "title", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
130    $objFormParam->addParam("µ­»öÆâÍÆ", "excerpt", MLTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
131}
132
133/* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */
134function lfCheckError() {
135    global $objFormParam;
136   
137    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
138    $arrRet =  $objFormParam->getHashArray();
139    $objErr = new SC_CheckError($arrRet);
140    $objErr->arrErr = $objFormParam->checkError();
141   
142    return $objErr->arrErr;
143}
144
145/* ¹¹¿·½èÍý */
146function lfEntryTrackBack($arrData) {
147    global $objQuery;
148
149    // ¥í¥°
150    $log_path = DATA_PATH . "logs/tb_result.log";
151
152    // ¥¹¥Ñ¥à¥Õ¥£¥ë¥¿¡¼
153    if (lfSpamFilter($arrData)) {
154        $arrData["status"] = TRACKBACK_STATUS_NOT_VIEW;
155    } else {
156        $arrData["status"] = TRACKBACK_STATUS_SPAM;
157    }
158
159    $arrData["create_date"] = "now()";
160    $arrData["update_date"] = "now()";
161
162    gfPrintLog("e--------------------", $log_path);
163    foreach($arrData as $key => $val) {
164        gfPrintLog( "\t" . $key . " => " . $val, $log_path);
165    }
166    gfPrintLog("e--------------------", $log_path);
167
168    // ¥Ç¡¼¥¿¤ÎÅÐÏ¿
169    $table = "dtb_trackback";
170    $ret = $objQuery->insert($table, $arrData);
171
172    gfPrintLog("INSERT RESULT : " . $ret, $log_path);
173    return $ret;
174}
175
176/* ¥¹¥Ñ¥à¥Õ¥£¥ë¥¿¡¼ */
177function lfSpamFilter($arrData, $run = false) {
178    $ret = true;
179   
180    // ¥Õ¥£¥ë¥¿¡¼½èÍý
181    if ($run) {
182    }
183    return $ret;
184}
185
186// OK¥ì¥¹¥Ý¥ó¥¹¤òÊÖ¤¹
187function IfResponseOk() {
188    header("Content-type: text/xml");
189    print("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>");
190    print("<response>");
191    print("<error>0</error>");
192    print("</response>");
193    exit();
194}
195
196// NG¥ì¥¹¥Ý¥ó¥¹¤òÊÖ¤¹
197function IfResponseNg() {
198    header("Content-type: text/xml");
199    print("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>");
200    print("<response>");
201    print("<error>1</error>");
202    print("<message>The error message</message>");
203    print("</response>");
204    exit();
205}
206//-----------------------------------------------------------------------------------------------------------------------------------
207?>
Note: See TracBrowser for help on using the repository browser.