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
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();
|
|
}
|
|
}
|
|
|
|
?>
|