private function sfGetCategoryId() { $objFormParam = new SC_FormParam_Ex(); $objFormParam->addParam("category_id", "category_id"); $objFormParam->setParam($_GET); $category_id = $objFormParam->getValue("category_id"); return $category_id; }
/** * @param SC_FormParam_Ex $objFormParam */ public function lfGetTargetData(&$objFormParam) { $objQuery =& SC_Query_Ex::getSingletonInstance(); $arrIndexFlag = $objFormParam->getValue('indexflag'); $arrIndexFlagNew = $objFormParam->getValue('indexflag_new'); $arrTableName = $objFormParam->getValue('table_name'); $arrColumnName = $objFormParam->getValue('column_name'); $arrTarget = array(); $message = ''; // 変更されている対象を走査 for ($i = 1; $i <= count($arrIndexFlag); $i++) { //入力値チェック $param = array('indexflag' => $arrIndexFlag[$i], 'indexflag_new' => $arrIndexFlagNew[$i], 'table_name' => $arrTableName[$i], 'column_name' => $arrColumnName[$i]); $objErr = new SC_CheckError_Ex($param); $objErr->doFunc(array('インデックス(' . $i . ')', 'indexflag', INT_LEN), array('NUM_CHECK')); $objErr->doFunc(array('インデックス変更後(' . $i . ')', 'indexflag_new', INT_LEN), array('NUM_CHECK')); $objErr->doFunc(array('インデックス変更後(' . $i . ')', 'indexflag_new', INT_LEN), array('NUM_CHECK')); $objErr->doFunc(array('テーブル名(' . $i . ')', 'table_name', STEXT_LEN), array('GRAPH_CHECK', 'EXIST_CHECK', 'MAX_LENGTH_CHECK')); $objErr->doFunc(array('カラム名(' . $i . ')', 'column_name', STEXT_LEN), array('GRAPH_CHECK', 'EXIST_CHECK', 'MAX_LENGTH_CHECK')); $arrErr = $objErr->arrErr; if (count($arrErr) != 0) { // 通常の送信ではエラーにならないはずです。 $message = "window.alert('不正なデータがあったため処理を中断しました。');"; return $message; } if ($param['indexflag'] != $param['indexflag_new']) { // 入力値がデータにある対象テーブルかのチェック if ($objQuery->exists('dtb_index_list', 'table_name = ? and column_name = ?', array($param['table_name'], $param['column_name']))) { $arrTarget[] = $param; } } } return $arrTarget; }
/** * Page のアクション. * * @return void */ function action() { $servername = "localhost"; $username = "******"; $password = "******"; $dbname = "rise_up_shop"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn) { $sql = "SELECT * FROM dtb_brand"; $result = mysqli_query($conn, $sql); $arr = []; $i = 0; while ($row = mysqli_fetch_object($result)) { $arr[$i]['brand_id'] = $row->brand_id; $arr[$i]['name'] = $row->name; $arr[$i]['image_path'] = $row->image_path; $arr[$i]['description'] = $row->description; $arr[$i]['email'] = $row->email; $arr[$i]['address'] = $row->address; $arr[$i]['website'] = $row->website; $i++; } $this->arrResults = $arr; } $objDb = new SC_Helper_DB_Ex(); $objDate = new SC_Date_Ex(); $this->arrMonth = $objDate->getMonth(); $this->arrDay = $objDate->getDay(); $mode = $this->getMode(); if (!empty($_POST)) { $objFormParam = new SC_FormParam_Ex(); $objFormParam->setParam($_POST); $objFormParam->convParam(); $brand_id = $objFormParam->getValue('brand_id'); if (!empty($this->arrErr['brand_id'])) { trigger_error('', E_USER_ERROR); return; } $post = $objFormParam->getHashArray(); } // 要求判定 switch ($mode) { // 編集処理 case 'edit': // POST値の引き継ぎ $this->arrForm = $this->arrForm = $_POST; if (count($this->arrErr) <= 0) { // 新規作成 if ($post['brand_id'] == '') { $this->lfInsertClass($this->arrForm, $_SESSION['member_id']); } else { $this->lfUpdateClass($this->arrForm, $post['brand_id']); } // 再表示 $this->objDisplay->reload(); } else { // POSTデータを引き継ぐ $this->tpl_brand_id = $post['brand_id']; } break; case 'down': $objDb->sfRankDown('dtb_brand', 'brand_id', $post['brand_id']); // 再表示 $this->objDisplay->reload(); break; case 'up': $objDb->sfRankUp('dtb_brand', 'brand_id', $post['brand_id']); // 再表示 $this->objDisplay->reload(); break; default: break; } $this->tpl_brand_id = $brand_id; }
/** * エラーチェックを行う。 * * @param SC_FormParam_Ex $objFormParam * @return array */ function checkError(SC_FormParam_Ex &$objFormParam) { $arrErr = $objFormParam->checkError(); $arrParam = $objFormParam->getFormParamList(); $objError = new SC_CheckError_Ex($objFormParam->getHashArray()); switch ($objFormParam->getValue('type')) { case COLUMN_TYPE_TEXT: case COLUMN_TYPE_TEXTAREA: $objError->doFunc(array($arrParam['max_length']['disp_name'], 'max_length'), array('EXIST_CHECK')); $objError->doFunc(array($arrParam['required']['disp_name'], 'required'), array('EXIST_CHECK')); break; } $arrErr = array_merge($objError->arrErr, $arrErr); return $arrErr; }
/** * @param SC_FormParam_Ex $objFormParam */ public function lfCheckError(&$objFormParam) { $objFormParam->convParam(); $objErr = new SC_CheckError_Ex($objFormParam->getHashArray()); $objErr->arrErr = $objFormParam->checkError(); // 特殊項目チェック // 月度集計 if ($objFormParam->getValue('search_form') == 1) { $objErr->doFunc(array('月度', 'search_startyear_m', 'search_startmonth_m'), array('FULL_EXIST_CHECK')); } // 期間集計 if ($objFormParam->getValue('search_form') == 2) { $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday'), array('FULL_EXIST_CHECK')); $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday'), array('FULL_EXIST_CHECK')); $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday'), array('CHECK_DATE')); $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_DATE')); $objErr->doFunc(array('期間(開始日)', '期間(終了日)', 'search_startyear', 'search_startmonth', 'search_startday', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_SET_TERM')); } return $objErr->arrErr; }
/** * SQL詳細設定情報呼び出し (編集中データがある場合はそれを保持する) * * @param SC_FormParam_Ex $objFormParam フォームパラメータークラス * @return mixed 表示用パラメーター */ public function lfGetSqlData(&$objFormParam) { // 編集中データがある場合 if (!SC_Utils_Ex::isBlank($objFormParam->getValue('sql_name')) || !SC_Utils_Ex::isBlank($objFormParam->getValue('csv_sql'))) { return $objFormParam->getHashArray(); } $sql_id = $objFormParam->getValue('sql_id'); if (!SC_Utils_Ex::isBlank($sql_id)) { $arrData = $this->lfGetSqlList('sql_id = ?', array($sql_id)); return $arrData[0]; } return array(); }
/** * 新規受付一覧の取得 * * @return array 新規受付一覧配列 */ function lfGetNewOrder() { $objQuery =& SC_Query_Ex::getSingletonInstance(); $cols = <<<__EOS__ dtb_order.order_id, dtb_order.customer_id, category.category_id, detail.product_id, detail.product_name, dtb_order.total, dtb_order.create_date __EOS__; $from = 'dtb_order'; $join = ' INNER JOIN dtb_order_detail AS detail ON detail.order_id = dtb_order.order_id'; $join .= ' INNER JOIN dtb_product_categories AS category ON detail.product_id = category.product_id'; $where = "del_flg = 0 AND status <> ? AND to_char(payment_date, 'yyyymm') = to_char(NOW(), 'yyyymm')"; $objFormParam = new SC_FormParam_Ex(); $objFormParam->addParam('ページ送り番号', 'search_pageno', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK')); $objFormParam->addParam('表示件数', 'search_page_max', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), 10); $objFormParam->setParam($_POST); $this->tpl_pageno = $objFormParam->getValue('search_pageno'); // 全件数 $this->tpl_linemax = $objQuery->count($from, $where, ORDER_CANCEL); // ページ送りの処理 $page_max = $objFormParam->getValue('search_page_max'); // ページ送りの取得 $objNavi = new SC_PageNavi_Ex($this->tpl_pageno, $this->tpl_linemax, $page_max, 'eccube.moveNaviPage', NAVI_PMAX); $this->arrPagenavi = $objNavi->arrPagenavi; $offset = $objNavi->start_row; // 受注一覧取得 $objQuery->setOrder('create_date DESC'); $objQuery->setLimitOffset($page_max, $offset); $arrNewOrder = $objQuery->select($cols, $from . $join, $where, ORDER_CANCEL); foreach ($arrNewOrder as $key => $val) { $arrNewOrder[$key]['create_date'] = str_replace('-', '/', substr($val['create_date'], 0, 19)); } return $arrNewOrder; }
/** * APIのリクエスト基本パラメーターのチェック * * @param SC_FormParam_Ex $objFormParam * @return array $arrErr */ protected function checkParam($objFormParam) { $arrErr = $objFormParam->checkError(); if (!preg_match("/^[a-zA-Z0-9\\-\\_]+\$/", $objFormParam->getValue('Operation')) && !SC_Utils::isBlank($objFormParam->getValue('Operation'))) { $arrErr['ECCUBE.Operation.ParamError'] = 'Operationの値が不正です。'; } if (!preg_match("/^[a-zA-Z0-9\\-\\_]+\$/", $objFormParam->getValue('Service')) && !SC_Utils::isBlank($objFormParam->getValue('Service'))) { $arrErr['ECCUBE.Service.ParamError'] = 'Serviceの値が不正です。'; } if (!preg_match("/^[a-zA-Z0-9\\-\\_]+\$/", $objFormParam->getValue('Style')) && !SC_Utils::isBlank($objFormParam->getValue('Style'))) { $arrErr['ECCUBE.Style.ParamError'] = 'Styleの値が不正です。'; } if (!preg_match("/^[a-zA-Z0-9\\-\\_]+\$/", $objFormParam->getValue('Validate')) && !SC_Utils::isBlank($objFormParam->getValue('Validate'))) { $arrErr['ECCUBE.Validate.ParamError'] = 'Validateの値が不正です。'; } if (!preg_match("/^[a-zA-Z0-9\\-\\_\\.]+\$/", $objFormParam->getValue('Version')) && !SC_Utils::isBlank($objFormParam->getValue('Version'))) { $arrErr['ECCUBE.Version.ParamError'] = 'Versionの値が不正です。'; } return $arrErr; }