transaction(); $levelNum = NULL; $dataId = NULL; $breadArr = array(); $returnArr = array(); $breadHtml = ''; if ( isset($_GET['id']) && is_numeric($_GET['id']) && $_GET['id'] != 0 ){ $dataId = trim($_GET['id']); } if ( is_null($dataId) ){ throw new ParametersException('無 ID 參數資料'); } if ( isset($_GET['level']) && is_numeric($_GET['level']) ){ $levelNum = trim($_GET['level']); } if ( is_null($levelNum) ){ throw new ParametersException('無層級參數'); } $level = 0; $i = 0; do { $levelData = $dbDao->getProdContent($dataId); if ( !is_array($levelData) || count($levelData) != 1 ){ throw new ParametersException('無此產品資料'); } $levelData = $levelData[0]; $levelArr = array(); $levelArr['level'] = $levelData['level']; $levelArr['title'] = $levelData['title']; $levelArr['uuid'] = $levelData['uuid']; $dataId = $levelData['upper_level']; if ($levelArr['level'] == 2 ){ // $levelTitle = $functions->getFirstWords($levelTitle, 2); } array_unshift($breadArr, $levelArr); }while($dataId != 0); $breadNum = count($breadArr); $levelPrefix = ''; if ( $breadNum >= 4 ){ $levelPrefix = '../'; } $breadHtml.= ''; if ( isset($breadArr[0]) ){ $breadOne = ''; if ( $levelNum == 1 ){ $breadOne = ''; } $breadHtml.= $breadOne; } if ( isset($breadArr[2]) ){ $breadThree = ''; if ( $levelNum == 2 ){ $breadThree = ''; } $breadHtml.= $breadThree; } if ( isset($breadArr[3]) ){ $breadHtml.= ''; } $returnArr['content'] = str_replace(array("\r\n", "\r", "\n", "\t"), '', $breadHtml); $dbDao->commitDB(); http_response_code(200); } catch ( ParametersException $pe ){ $returnArr['errMsg'] = $pe->getMessage(); http_response_code(400); } catch ( Exception $e ){ $returnArr['errMsg'] = $e->getMessage(); if($dbDao != null) { $dbDao->rollbackDB(); } http_response_code(500); } finally { echo json_encode($returnArr, JSON_UNESCAPED_UNICODE); if($dbDao != null) { $dbDao->closeDB(); } } ?>