You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

62 lines
1.7 KiB

<?php
/**
* 產品介紹內頁
*/
require_once('../../conf/ProductEnum.php');
require_once('../../conf/ParametersException.php');
require_once('../../db/ProductDAO.php');
try{
$result = array();
$dataNum = 0;
$dbDao = new ProductDAO();
$dbDao->transaction();
$dataId = 0;
$returnArr = array();
if ( isset($_GET['id']) && is_numeric($_GET['id']) && $_GET['id'] != 0 ){
$dataId = trim($_GET['id']);
}
if ( $dataId == 0 ){
throw new ParametersException('無資料');
}
$levelData = $dbDao->getLevelDataById(4, $dataId, 1, 1);
if ( !is_array($levelData) || count($levelData) != 1 ){
throw new ParametersException('無此產品資料');
}
$levelData = $levelData[0];
if ( $levelData['level'] != 4 ){
throw new ParametersException('此分類無詳細說明');
}
$upperData = $dbDao->getProdContent($levelData['upper_level']);
if ( !is_array($upperData) || count($upperData) != 1 ){
throw new ParametersException('無上層產品資料');
}
$returnArr['content'] = array();
$returnArr['content']['title'] = $levelData['title'];
$returnArr['content']['subTitle'] = $levelData['sub_title'];
$returnArr['content']['imageUrl'] = $levelData['image_url'];
$returnArr['content']['imageAlt'] = $levelData['image_alt'];
$returnArr['content']['upper'] = $upperData[0]['upper_level'];
$returnArr['content']['content'] = $levelData['content'];
$dbDao->commitDB();
http_response_code(200);
} catch ( ParametersException $pe ){
echo $pe->getMessage();
http_response_code(400);
} catch ( Exception $e ){
if($dbDao != null) {
$dbDao->rollbackDB();
}
http_response_code(500);
} finally {
echo json_encode($returnArr, JSON_UNESCAPED_UNICODE);
if($dbDao != null) {
$dbDao->closeDB();
}
}
?>