public static function getKeywordId($keyword) { global $db; $keyword_quoted = $db->quote($keyword); $sql = "SELECT `keyword_id` FROM `keyword` WHERE `keyword`={$keyword_quoted}"; $keyword_id = $db->getOne($sql); if (empty($keyword_id)) { $keyword_id = KeywordModel::createKeywordItem($keyword); } return $keyword_id; }
/** * @param KeywordModel $model * @see ControllerBase::update() */ public function update($model) { if ($model->validateForUpdate()) { try { $query = <<<SQL UPDATE keyword SET keywordValue = ? , sortKey = ? WHERE id = ? SQL; $id = $model->getId(); $keywordValue = $model->getKeywordValue(); $sortKey = $model->getSortKey(); $stmt = $this->_dbh->prepare($query); if (!$stmt) { throw new ControllerException('Prepared statement failed for ' . $query); } if (!$stmt->bind_param('sii', $keywordValue, $sortKey, $id)) { throw new ControllerException('Binding parameters for prepared statement failed.'); } if (!$stmt->execute()) { throw new ControllerException('Failed to execute UPDATE statement. (' . $this->_dbh->error . ')'); } /** * @SuppressWarnings checkAliases */ if (!$stmt->close()) { throw new ControllerException('Something broke while trying to close the prepared statement.'); } return $id; } catch (Exception $e) { throw new ControllerException($e->getMessage()); } } else { throw new ControllerException("Invalid data."); } }
echo json_encode(array('updated' => $afx === false ? '0' : '1')); exit; } elseif ($act == "list_yamai") { $yamai_name = getRequest('yamai_name', ''); $yamai_type = getRequest('yamai_type', null); $yamai_system = getRequest('yamai_system', null); $limit = 0; $offset = 0; $list_of_yamai = YamaiModel::listYamai($yamai_name, $yamai_type, $yamai_system, $limit, $offset); echo json_encode(array('list' => $list_of_yamai === false ? array() : $list_of_yamai)); exit; } elseif ($act == "search") { $keywords = getRequest('keywords', array()); $keywords = preg_split("/[\\s,]+/", $keywords); $list_of_yamai = KYStoreModel::searchKeywords($keywords); echo json_encode(array('list' => $list_of_yamai === false ? array() : $list_of_yamai)); exit; } elseif ($act == 'possible_keywords') { $keyword = getRequest('keyword', ''); $limit = getRequest('limit', 10); $keywords = KeywordModel::queryKeywordWithPrefix($keyword, $limit); echo json_encode(array('list' => $keywords === false ? array() : $keywords)); exit; } elseif ($act == 'possible_yamai') { $keyword = getRequest('keyword', ''); $type = getRequest('type', ''); $limit = getRequest('limit', 10); $keywords = YamaiModel::queryYamaiWithTypeAndPrefix($type, $keyword, $limit); echo json_encode(array('list' => $keywords === false ? array() : $keywords)); exit; }