<?php
header('Content-Type: application/json');
include_once('../../conn.php');
include_once('../query_lists.php');
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
switch ($_REQUEST['v1']) {
case 'get_all_counts':
$returnObject = get_all_counts();
break;
case 'get_all_items':
$returnObject = get_all_items();
break;
case 'search_item':
$returnObject = search_item(@$_POST['keyword']);
break;
case 'get_all_skills':
$returnObject = get_all_skills();
break;
case 'get_all_properties':
$returnObject = get_all_properties();
break;
case 'search_property':
$returnObject = search_property(@$_POST['keyword']);
break;
default:
$returnObject = (object) array(
"error_code" => 1001,
"error_msg" => "未知的api接口",
);
}
echo json_encode($returnObject);
}
function get_all_counts() {
global $mysqli, $mysql_config;
$stmt = $mysqli->prepare(QUERY_LISTS::QUERY_GET_ALL_COUNTS);
$stmt->bind_param("s", $mysql_config['db']);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($total_counts);
$stmt->fetch();
$returnObject = array(
"result" => "success",
"total_counts" => $total_counts
);
$stmt->close();
$mysqli->close();
return $returnObject;
}
function search_item($keyword) {
global $mysqli;
$keyword = trim($keyword);
if (empty($keyword)) {
$query_keyword = "LIKE '%'";
} else {
$new_keyword = join('|', explode(" ", $keyword));
$query_keyword = "REGEXP '{$new_keyword}'";
}
$stmt = $mysqli->prepare(str_replace("###KEYWORDS###", $query_keyword, QUERY_LISTS::QUERY_SEARCH_ITEM));
$stmt->execute();
$stmt->store_result();
$lists = _generate_items_response_data($stmt);
if (empty($lists)) {
$returnObject = array(
"result" => "failed",
"reason" => "no recorder",
"keyword" => $keyword
);
} else {
$returnObject = array(
"result" => "success",
"lists" => $lists,
"keyword" => $keyword
);
}
$stmt->close();
$mysqli->close();
return $returnObject;
}
function get_all_items() {
global $mysqli;
$stmt = $mysqli->prepare(QUERY_LISTS::QUERY_GET_ALL_ITEMS);
$stmt->execute();
$stmt->store_result();
$lists = _generate_items_response_data($stmt);
$returnObject = array(
"result" => "success",
"lists" => $lists
);
$stmt->close();
$mysqli->close();
return $returnObject;
}
function get_all_skills() {
global $mysqli;
$stmt = $mysqli->prepare(QUERY_LISTS::QUERY_GET_ALL_SKILLS);
$stmt->execute();
$stmt->store_result();
$lists = _generate_skills_response_data($stmt);
$returnObject = array(
"result" => "success",
"lists" => $lists
);
$stmt->close();
$mysqli->close();
return $returnObject;
}
function get_all_properties() {
global $mysqli;
$stmt = $mysqli->prepare(QUERY_LISTS::QUERY_GET_ALL_PROPERTIES);
$stmt->execute();
$stmt->store_result();
$lists = _generate_properties_response_data($stmt);
$returnObject = array(
"result" => "success",
"lists" => $lists
);
$stmt->close();
$mysqli->close();
return $returnObject;
}
function search_property($keyword) {
global $mysqli;
if (!$keyword) {$keyword = "";}
$query_keyword = "%{$keyword}%";
$stmt = $mysqli->prepare(QUERY_LISTS::QUERY_SEARCH_PROPERTY);
$stmt->bind_param("sss", $query_keyword, $query_keyword, $keyword);
$stmt->execute();
$stmt->store_result();
$lists = _generate_properties_response_data($stmt);
if (empty($lists)) {
$returnObject = array(
"result" => "failed",
"reason" => "no recorder",
"keyword" => $keyword
);
} else {
$returnObject = array(
"result" => "success",
"lists" => $lists,
"keyword" => $keyword
);
}
$stmt->close();
$mysqli->close();
return $returnObject;
}
function _generate_items_response_data($stmt) {
$stmt->bind_result($category_id, $category_name, $subcategory_id, $subcategory_name, $name, $item1, $item2, $item3, $remark);
$stmt->fetch();
if (empty($category_id)) {return null;}
$last_category_id = $category_id;
$last_subcategory_id = $subcategory_id;
$list[] = array(
"category_id" => $category_id,
"subcategory_id" => $subcategory_id,
"category" => $category_name,
"subcategory" => $subcategory_name,
"name" => $name,
"item1" => $item1,
"item2" => $item2,
"item3" => $item3,
"remark" => $remark
);
while ($stmt->fetch()) {
if ($last_subcategory_id != $subcategory_id || $last_category_id != $category_id) {
$last_subcategory_id = $subcategory_id;
$last_category_id = $category_id;
$lists[] = $list;
$list = array();
}
$list[] = array(
"category_id" => $category_id,
"subcategory_id" => $subcategory_id,
"category" => $category_name,
"subcategory" => $subcategory_name,
"name" => $name,
"item1" => $item1,
"item2" => $item2,
"item3" => $item3,
"remark" => $remark
);
}
$lists[] = $list;
return $lists;
}
function _generate_skills_response_data($stmt) {
$stmt->bind_result($character_id, $character_name, $skill_kind_id, $skill_kind_name, $level, $skill_point, $name, $remark);
$stmt->fetch();
$last_character_id = $character_id;
$last_skill_kind_id = $skill_kind_id;
$list[] = array(
"character_id" => $character_id,
"skill_kind_id" => $skill_kind_id,
"character" => $character_name,
"skill_kind" => $skill_kind_name,
"level" => $level,
"skill_point" => $skill_point,
"name" => $name,
"remark" => $remark
);
while ($stmt->fetch()) {
if ($last_skill_kind_id != $skill_kind_id || $last_character_id != $character_id) {
$last_skill_kind_id = $skill_kind_id;
$last_character_id = $character_id;
$lists[] = $list;
$list = array();
}
$list[] = array(
"character_id" => $character_id,
"skill_kind_id" => $skill_kind_id,
"character" => $character_name,
"skill_kind" => $skill_kind_name,
"level" => $level,
"skill_point" => $skill_point,
"name" => $name,
"remark" => $remark
);
}
$lists[] = $list;
return $lists;
}
function _generate_properties_response_data($stmt) {
$stmt->bind_result($city_id, $city_name, $building_id, $building_name, $name, $price, $remark);
$stmt->fetch();
if (empty($city_id)) {return null;}
$last_city_id = $city_id;
$list[] = array(
"city_id" => $city_id,
"building_id" => $building_id,
"city" => $city_name,
"building" => $building_name,
"name" => $name,
"price" => $price,
"remark" => $remark
);
while ($stmt->fetch()) {
if ($last_city_id != $city_id) {
$last_city_id = $city_id;
$lists[] = $list;
$list = array();
}
$list[] = array(
"city_id" => $city_id,
"building_id" => $building_id,
"city" => $city_name,
"building" => $building_name,
"name" => $name,
"price" => $price,
"remark" => $remark
);
}
$lists[] = $list;
return $lists;
}
?>
没有合适的资源?快使用搜索试试~ 我知道了~
Dragon Quest 8 炼金合成表
共38个文件
js:5个
php:4个
html:4个
需积分: 5 0 下载量 39 浏览量
2024-03-04
11:00:43
上传
评论
收藏 1.33MB ZIP 举报
温馨提示
Dragon Quest 8 炼金合成表
资源推荐
资源详情
资源评论
收起资源包目录
Dragon-Quest-8-Composed-Table-master.zip (38个子文件)
Dragon-Quest-8-Composed-Table-master
inc
api
database
.htaccess 105B
index_v1.php 7KB
query_lists.php 3KB
conn.sample.php 724B
sql
dq8.sql 74KB
LICENSE 1KB
web
js
city_table.js 5KB
skill_table.js 3KB
composed_table.js 7KB
main.js 452B
body_change.js 447B
interface
city_table.html 2KB
skill_table.html 1KB
index.html 2KB
composed_table.html 2KB
css
main.css 3KB
styles.css 153KB
vendor
font-awesome
webfonts
fa-brands-400.woff 86KB
fa-brands-400.ttf 127KB
fa-brands-400.svg 678KB
fa-solid-900.woff 94KB
fa-solid-900.eot 182KB
fa-solid-900.ttf 182KB
fa-brands-400.woff2 73KB
fa-regular-400.woff2 13KB
fa-brands-400.eot 127KB
fa-regular-400.eot 34KB
fa-regular-400.woff 16KB
fa-regular-400.svg 141KB
fa-regular-400.ttf 33KB
fa-solid-900.woff2 73KB
fa-solid-900.svg 798KB
css
all.css 67KB
DATABASE.md 4KB
index.php 384B
.gitignore 106B
images
search_box.png 48KB
favicon.png 6KB
共 38 条
- 1
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 6804
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功