private function GetDataList()
 {
     $ret = array();
     $ret["list"] = array();
     $ret["row_count"] = 0;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT column_no, title, description, keisai_datetime " . "FROM t_column " . "WHERE keisai_flg = 1 " . " AND NOW() >= keisai_datetime " . "ORDER BY keisai_datetime DESC, column_no DESC " . "LIMIT 10;";
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         // 全体の件数を取得
         $ret["row_count"] = $this->dbCon->RowCount();
         $list = array();
         while ($row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) {
             unset($item);
             $item["column_no"] = $row["column_no"];
             $item["title"] = $row["title"];
             $item["description"] = $row["description"];
             $item["keisai_datetime"] = $this->ConvertToRfc2822($row["keisai_datetime"]);
             $list[] = $item;
         }
         $ret["status"] = 1;
         $ret["list"] = $list;
     } catch (PDOException $e) {
         $ret["status"] = 0;
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }
function dbLogout($dbCon)
{
    if (!$_COOKIE[APP_LOGIN_ADM_ID]) {
        return false;
    }
    setcookie(APP_LOGIN_ADM_ID, "", time() - 3600);
    try {
        // SQL組み立て ----------------------------------------------
        $param = array();
        $sql = "DELETE FROM";
        $sql .= " c_login ";
        $sql .= "WHERE";
        $sql .= " login_id = ? AND";
        $sql .= " user_no = ?";
        $param[] = $_COOKIE[APP_LOGIN_ADM_ID];
        $param[] = LoginInfo::$user_no;
        $dbCon->ExecuteNonQuery($sql, $param);
    } catch (PDOException $e) {
        cmnLogOutput("db error : " . print_r($e, true));
    }
    return true;
}
 private function GetDataList()
 {
     $ret = array();
     $ret["list"] = array();
     $ret["row_count"] = 0;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT column_no, column_path, title, description, keisai_datetime " . "FROM t_column " . "WHERE keisai_flg = 1 " . " AND NOW() >= keisai_datetime " . " AND keisai_kigen > Now() " . "ORDER BY keisai_datetime DESC, column_no DESC " . "LIMIT 20;";
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         // 全体の件数を取得
         $ret["row_count"] = $this->dbCon->RowCount();
         $list = [];
         $pool = [];
         while ($row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) {
             if (in_array($row["column_path"], $pool)) {
                 continue;
             } else {
                 $pool[] = $row["column_path"];
             }
             unset($item);
             $item["column_no"] = str_pad($row["column_no"], 2, "0", STR_PAD_LEFT);
             $item["column_path"] = str_pad($row["column_path"], 2, "0", STR_PAD_LEFT);
             $item["title"] = $row["title"];
             $item["description"] = $row["description"];
             $item["keisai_datetime"] = $this->ConvertToRfc2822($row["keisai_datetime"]);
             $list[] = $item;
             if (count($list) == 10) {
                 break;
             }
         }
         $ret["status"] = 1;
         $ret["list"] = $list;
     } catch (PDOException $e) {
         $ret["status"] = 0;
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }
 private function GetDbBody2($column_no)
 {
     $body = array();
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT";
         $sql .= " column_body_no,";
         $sql .= " sub_title,";
         $sql .= " column_body ";
         $sql .= "FROM";
         $sql .= " t_column_body ";
         $sql .= "WHERE";
         $sql .= " column_no = ?";
         $sql .= "ORDER BY";
         $sql .= " seq ";
         $sql .= " LIMIT 1;";
         $param[] = $column_no;
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         $row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT);
         if ($row) {
             $column_body_no = $row["column_body_no"];
             $body["column_body_no"] = $column_body_no;
             $body["sub_title"] = $row["sub_title"];
             $body["column_body"] = strip_tags($row["column_body"], "");
             // 画像
             $body["img_nm"] = fimgGetFileName($column_body_no, "column/tn_");
             if (strlen($body["img_nm"]) > 0) {
                 $body["img_show"] = true;
             } else {
                 $body["img_show"] = false;
             }
             $body["img_src"] = fimgImgSrc($body["img_nm"], "column/tn_");
         }
     } catch (PDOException $e) {
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $body;
 }
 public function DbDelete()
 {
     try {
         // トランザクション開始
         $this->dbCon->BeginTran();
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "DELETE FROM";
         $sql .= " m_user ";
         $sql .= "WHERE";
         $sql .= " user_no = ?";
         $param[] = $this->user_no;
         $this->dbCon->ExecuteNonQuery($sql, $param);
         $this->dbCon->Commit();
     } catch (PDOException $e) {
         $this->dbCon->Rollback();
         $errno = $e->errorInfo[1];
         switch ($errno) {
             case 1452:
                 //外部キー制約
                 $arr_msg = array();
                 $arr_msg[] = "削除に失敗しました。";
                 $this->smarty->assign("arr_msg", $arr_msg);
                 return false;
         }
         cmnLogOutput("db error : " . print_r($e, true));
         die('db error');
     }
     return true;
 }
 private function GetDataList()
 {
     $ret = array();
     $ret["list"] = array();
     $ret["row_count"] = 0;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT SQL_CALC_FOUND_ROWS";
         $sql .= " user_no,";
         $sql .= " user_nm,";
         $sql .= " user_kn,";
         $sql .= " user_id,";
         $sql .= " e_mail,";
         $sql .= " last_login_time,";
         $sql .= " ltime ";
         $sql .= "FROM";
         $sql .= " m_user ";
         $sql .= "ORDER BY";
         switch ($_GET["si"]) {
             case "user_no":
                 $sql .= " user_no" . ($_GET["sa"] == "desc" ? " DESC" : "") . " ";
                 break;
             case "user_nm":
                 $sql .= " user_nm" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", user_no ";
                 break;
             case "user_kn":
                 $sql .= " user_kn" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", user_no ";
                 break;
             case "user_id":
                 $sql .= " user_id" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", user_no ";
                 break;
             case "e_mail":
                 $sql .= " e_mail" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", user_no ";
                 break;
             case "last_login_time":
                 $sql .= " last_login_time" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", user_no ";
                 break;
             default:
                 $sql .= " user_no ";
         }
         $sql .= comGetLimit($_GET["pn"], $_GET["pl"], self::C_LIST_COL_CNT);
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         // 全体の件数を取得
         $ret["row_count"] = $this->dbCon->RowCount();
         $list = array();
         while ($row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) {
             unset($item);
             $item["user_no"] = $row["user_no"];
             $item["user_nm"] = $row["user_nm"];
             $item["user_kn"] = $row["user_kn"];
             $item["user_id"] = $row["user_id"];
             $item["e_mail"] = $row["e_mail"];
             $item["last_login_time"] = $row["last_login_time"];
             $list[] = $item;
         }
         $ret["status"] = 1;
         $ret["list"] = $list;
     } catch (PDOException $e) {
         $ret["status"] = 0;
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }
 private function GetDataList()
 {
     $ret = array();
     $ret["list"] = array();
     $ret["row_count"] = 0;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT SQL_CALC_FOUND_ROWS";
         $sql .= " column_no,";
         $sql .= " creation_date,";
         $sql .= " midashi_title,";
         $sql .= " keisai_datetime,";
         $sql .= " keisai_flg,";
         $sql .= " ltime ";
         $sql .= "FROM";
         $sql .= " t_column ";
         $sql .= "ORDER BY";
         switch ($_GET["si"]) {
             case "creation_date":
                 $sql .= " creation_date" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", column_no ";
                 break;
             case "midashi_title":
                 $sql .= " midashi_title" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", column_no ";
                 break;
             case "keisai_datetime":
                 $sql .= " keisai_datetime" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", column_no ";
                 break;
             case "keisai_flg":
                 $sql .= " keisai_flg" . ($_GET["sa"] == "desc" ? " DESC" : "") . ", column_no ";
                 break;
             default:
                 $sql .= " keisai_datetime DESC, column_no DESC ";
         }
         $sql .= comGetLimit($_GET["pn"], $_GET["pl"], self::C_LIST_COL_CNT);
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         // 全体の件数を取得
         $ret["row_count"] = $this->dbCon->RowCount();
         $list = array();
         while ($row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) {
             unset($item);
             $item["column_no"] = $row["column_no"];
             $item["creation_date"] = $row["creation_date"];
             $item["midashi_title"] = $row["midashi_title"];
             $item["keisai_datetime"] = $row["keisai_datetime"];
             $item["keisai_flg"] = $row["keisai_flg"];
             $list[] = $item;
         }
         $ret["status"] = 1;
         $ret["list"] = $list;
     } catch (PDOException $e) {
         $ret["status"] = 0;
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }
 function LastInsertId()
 {
     $last_id = 0;
     try {
         $param = array();
         $sql = "SELECT LAST_INSERT_ID() AS last_id";
         $stmt = $this->dbCon->prepare($sql);
         $stmt->execute($param);
         $row = $stmt->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT);
         if ($row) {
             $last_id = $row["last_id"];
         }
     } catch (PDOException $e) {
         cmnLogOutput("DbConn LastInsertId PDOException:" . print_r($e, true));
         return 0;
     }
     return $last_id;
 }
 public function DbDelete()
 {
     try {
         // トランザクション開始
         $this->dbCon->BeginTran();
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "DELETE FROM";
         $sql .= " t_column ";
         $sql .= "WHERE";
         $sql .= " column_no = ?";
         $param[] = $this->column_no;
         $this->dbCon->ExecuteNonQuery($sql, $param);
         $this->dbCon->Commit();
         // 画像
         fimgDelete("main_" . $this->column_no, "column/");
         // Bodyの画像を削除すること
     } catch (PDOException $e) {
         $this->dbCon->Rollback();
         $errno = $e->errorInfo[1];
         switch ($errno) {
             case 1451:
                 //外部キー制約
         }
         cmnLogOutput("db error : " . print_r($e, true));
         die('db error');
     }
     return true;
 }
 function UserCheck($user_id, $user_password)
 {
     $ret = false;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT";
         $sql .= " user_no,";
         $sql .= " password ";
         $sql .= "FROM";
         $sql .= " m_user ";
         $sql .= "WHERE";
         $sql .= " user_id = BINARY ?";
         $param[] = $user_id;
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         $row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT);
         if ($row !== false) {
             $this->user_no = $row["user_no"];
             $password = $row["password"];
             if ($password === $user_password) {
                 $ret = true;
             }
         }
     } catch (PDOException $e) {
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }
 public function IsToken($token)
 {
     $ret = false;
     try {
         // SQL組み立て ----------------------------------------------
         $param = array();
         $sql = "SELECT";
         $sql .= " token ";
         $sql .= "FROM";
         $sql .= " c_token ";
         $sql .= "WHERE";
         $sql .= " token = ?";
         $param[] = $token;
         $reader = $this->dbCon->ExecuteReader($sql, $param);
         $row = $reader->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT);
         if ($row !== false) {
             if ($token == $row["token"]) {
                 $ret = true;
             }
         }
     } catch (PDOException $e) {
         cmnLogOutput("db error : " . print_r($e, true));
     }
     return $ret;
 }