Changeset 15078 for branches/feature-module-update/html/tb/index.php
- Timestamp:
- 2007/07/20 15:58:59 (19 years ago)
- Location:
- branches/feature-module-update
- Files:
-
- 1 edited
- 2 copied
-
. (copied) (copied from branches/rel) (1 prop)
-
html (copied) (copied from branches/rel/html)
-
html/tb/index.php (modified) (16 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/feature-module-update
-
Property
svn:ignore
set to
.cache
.settings
.projectOptions
-
Property
svn:ignore
set to
-
branches/feature-module-update/html/tb/index.php
r14327 r15078 7 7 8 8 /* 9 * ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¼õ¿®10 * 11 * [1] ¤Ê¤ë¤Ù¤¯Â¿¤¯¤Î¥Ö¥í¥°¤ËÂбþ¤Ç¤¤ë¤è¤¦¤Ë¡¢GET/POST ¤Ë´Ø¤ï¤é¤º¼õ¿®¤¹¤ë12 * [2]RSS ¤ÎÍ×µá¤ÏGET¤Ç__mode¥Ñ¥é¥á¡¼¥¿¤¬rss¤Î¾ì¹ç¤Î¤ßÂбþ¤¹¤ë(¾¦ÉʾðÊó¤òÊÖ¤¹)13 * [3] ʸ»ú¥³¡¼¥É¤Ï»ØÄ꤬¤Ê¤±¤ì¤Ðauto¤ÇÂбþ¤¹¤ë14 * [4] ¥¹¥Ñ¥à¤Ï¡¢¥ª¥ê¥¸¥Ê¥ë(¹¥¤ß)¤Î¥¢¥ë¥´¥ê¥º¥à¤ÇÂбþ¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤¯9 * トラックバック受信 10 * 11 * [1]なるべく多くのブログに対応できるように、GET/POST に関わらず受信する 12 * [2]RSSの要求はGETで__modeパラメータがrssの場合のみ対応する(商品情報を返す) 13 * [3]文字コードは指定がなければautoで対応する 14 * [4]スパムは、オリジナル(好み)のアルゴリズムで対応できるようにしておく 15 15 */ 16 16 … … 20 20 $objFormParam = new SC_FormParam(); 21 21 22 // ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯µ¡Ç½¤Î²ÔƯ¾õ¶·¥Á¥§¥Ã¥¯22 // トラックバック機能の稼働状況チェック 23 23 if (sfGetSiteControlFlg(SITE_CONTROL_TRACKBACK) != 1) { 24 24 // NG … … 27 27 } 28 28 29 // ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½29 // パラメータ情報の初期化 30 30 lfInitParam(); 31 31 32 // ¥¨¥ó¥³¡¼¥ÉÀßÄê(¥µ¡¼¥Ð´Ä¶¤Ë¤è¤Ã¤ÆÊѹ¹)32 // エンコード設定(サーバ環境によって変更) 33 33 $beforeEncode = "auto"; 34 34 $afterEncode = mb_internal_encoding(); … … 40 40 } 41 41 42 // POST ¥Ç¡¼¥¿¤Î¼èÆÀ¤È¥¨¥ó¥³¡¼¥ÉÊÑ´¹43 44 // ¥Ö¥í¥°Ì¾42 // POSTデータの取得とエンコード変換 43 44 // ブログ名 45 45 if (isset($_POST["blog_name"])) { 46 46 $arrData["blog_name"] = trim(mb_convert_encoding($_POST["blog_name"], $afterEncode, $beforeEncode)); … … 49 49 } 50 50 51 // ¥Ö¥í¥°µ»öURL51 // ブログ記事URL 52 52 if (isset($_POST["url"])) { 53 53 $arrData["url"] = trim(mb_convert_encoding($_POST["url"], $afterEncode, $beforeEncode)); … … 56 56 } else { 57 57 /* 58 * RSS ÌÜŪ¤Ç¤Ï¤Ê¤¤GET¥ê¥¯¥¨¥¹¥È¤òÀ©¸æ(livedoor blog)59 * _rss ¥Ñ¥é¥á¡¼¥¿¤Ç¤ÎGET¥ê¥¯¥¨¥¹¥È¤òÀ©¸æ(Yahoo blog)58 * RSS目的ではないGETリクエストを制御(livedoor blog) 59 * _rssパラメータでのGETリクエストを制御(Yahoo blog) 60 60 */ 61 61 if (isset($_GET["__mode"]) && isset($_GET["pid"])) { … … 67 67 } 68 68 69 // ¥Ö¥í¥°µ»ö¥¿¥¤¥È¥ë69 // ブログ記事タイトル 70 70 if (isset($_POST["title"])) { 71 71 $arrData["title"] = trim(mb_convert_encoding($_POST["title"], $afterEncode, $beforeEncode)); … … 74 74 } 75 75 76 // ¥Ö¥í¥°µ»öÆâÍÆ76 // ブログ記事内容 77 77 if (isset($_POST["excerpt"])) { 78 78 $arrData["excerpt"] = trim(mb_convert_encoding($_POST["excerpt"], $afterEncode, $beforeEncode)); … … 90 90 $objFormParam->setParam($arrData); 91 91 92 // ÆþÎÏʸ»ú¤ÎÊÑ´¹92 // 入力文字の変換 93 93 $objFormParam->convParam(); 94 94 $arrData = $objFormParam->getHashArray(); 95 95 96 // ¥¨¥é¡¼¥Á¥§¥Ã¥¯(¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¤¬À®¤êΩ¤¿¤Ê¤¤¤Î¤Ç¡¢URL°Ê³°¤âɬ¿Ü¤È¤¹¤ë)96 // エラーチェック(トラックバックが成り立たないので、URL以外も必須とする) 97 97 $objPage->arrErr = lfCheckError(); 98 98 99 // ¥¨¥é¡¼¤¬¤Ê¤¤¾ì¹ç¤Ï¥Ç¡¼¥¿¤ò¹¹¿·99 // エラーがない場合はデータを更新 100 100 if(count($objPage->arrErr) == 0) { 101 101 102 // ¾¦ÉÊ¥³¡¼¥É¤Î¼èÆÀ(GET)102 // 商品コードの取得(GET) 103 103 if (isset($_GET["pid"])) { 104 104 $product_id = $_GET["pid"]; 105 105 106 // ¾¦Éʥǡ¼¥¿¤Î¸ºß³Îǧ106 // 商品データの存在確認 107 107 $table = "dtb_products"; 108 108 $where = "product_id = ?"; 109 109 110 // ¾¦Éʥǡ¼¥¿¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¥Ç¡¼¥¿¤Î¹¹¿·110 // 商品データが存在する場合はトラックバックデータの更新 111 111 if (sfDataExists($table, $where, array($product_id))) { 112 112 $arrData["product_id"] = $product_id; 113 113 114 // ¥Ç¡¼¥¿¤Î¹¹¿·114 // データの更新 115 115 if (lfEntryTrackBack($arrData) == 1) { 116 116 IfResponseOk(); … … 129 129 130 130 /* 131 * ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½132 * 133 * @param void ¤Ê¤·134 * @return void ¤Ê¤·131 * パラメータ情報の初期化 132 * 133 * @param void なし 134 * @return void なし 135 135 */ 136 136 function lfInitParam() { 137 137 global $objFormParam; 138 138 $objFormParam->addParam("URL", "url", URL_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 139 $objFormParam->addParam(" ¥Ö¥í¥°¥¿¥¤¥È¥ë", "blog_name", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));140 $objFormParam->addParam(" µ»ö¥¿¥¤¥È¥ë", "title", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));141 $objFormParam->addParam(" µ»öÆâÍÆ", "excerpt", MLTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));142 } 143 144 /* 145 * ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯146 * 147 * @param void ¤Ê¤·148 * @return $objErr->arrErr ¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸139 $objFormParam->addParam("ブログタイトル", "blog_name", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 140 $objFormParam->addParam("記事タイトル", "title", MTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 141 $objFormParam->addParam("記事内容", "excerpt", MLTEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 142 } 143 144 /* 145 * 入力内容のチェック 146 * 147 * @param void なし 148 * @return $objErr->arrErr エラーメッセージ 149 149 */ 150 150 function lfCheckError() { 151 151 global $objFormParam; 152 152 153 // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£153 // 入力データを渡す。 154 154 $arrRet = $objFormParam->getHashArray(); 155 155 $objErr = new SC_CheckError($arrRet); … … 160 160 161 161 /* 162 * ¹¹¿·½èÍý163 * 164 * @param $arrData ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¥Ç¡¼¥¿165 * @return $ret ·ë²Ì162 * 更新処理 163 * 164 * @param $arrData トラックバックデータ 165 * @return $ret 結果 166 166 */ 167 167 function lfEntryTrackBack($arrData) { 168 168 global $objQuery; 169 169 170 // ¥í¥°170 // ログ 171 171 $log_path = DATA_PATH . "logs/tb_result.log"; 172 172 173 // ¥¹¥Ñ¥à¥Õ¥£¥ë¥¿¡¼173 // スパムフィルター 174 174 if (lfSpamFilter($arrData)) { 175 175 $arrData["status"] = TRACKBACK_STATUS_NOT_VIEW; … … 186 186 $arrData['excerpt'] = ''; 187 187 } 188 // ¥Ç¡¼¥¿¤ÎÅÐÏ¿188 // データの登録 189 189 $table = "dtb_trackback"; 190 190 $ret = $objQuery->insert($table, $arrData); … … 193 193 194 194 /* 195 * ¥¹¥Ñ¥à¥Õ¥£¥ë¥¿¡¼196 * 197 * @param $arrData ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¥Ç¡¼¥¿198 * @param $run ¥Õ¥£¥ë¥¿¡¼¥Õ¥é¥°(true:»ÈÍѤ¹¤ë false:»ÈÍѤ·¤Ê¤¤)199 * @return $ret ·ë²Ì195 * スパムフィルター 196 * 197 * @param $arrData トラックバックデータ 198 * @param $run フィルターフラグ(true:使用する false:使用しない) 199 * @return $ret 結果 200 200 */ 201 201 function lfSpamFilter($arrData, $run = false) { 202 202 $ret = true; 203 203 204 // ¥Õ¥£¥ë¥¿¡¼½èÍý204 // フィルター処理 205 205 if ($run) { 206 206 } … … 209 209 210 210 /* 211 * OK ¥ì¥¹¥Ý¥ó¥¹¤òÊÖ¤¹212 * 213 * @param void ¤Ê¤·214 * @return void ¤Ê¤·211 * OKレスポンスを返す 212 * 213 * @param void なし 214 * @return void なし 215 215 */ 216 216 function IfResponseOk() { … … 224 224 225 225 /* 226 * NG ¥ì¥¹¥Ý¥ó¥¹¤òÊÖ¤¹227 * 228 * @param void ¤Ê¤·229 * @return void ¤Ê¤·226 * NGレスポンスを返す 227 * 228 * @param void なし 229 * @return void なし 230 230 */ 231 231 function IfResponseNg() { … … 240 240 241 241 /* 242 * ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯RSS¤òÊÖ¤¹243 * 244 * @param $product_id ¾¦ÉÊ¥³¡¼¥É245 * @return void ¤Ê¤·242 * トラックバックRSSを返す 243 * 244 * @param $product_id 商品コード 245 * @return void なし 246 246 */ 247 247 function IfResponseRss($product_id) {
Note: See TracChangeset
for help on using the changeset viewer.
