Skip to content
This repository was archived by the owner on Sep 19, 2025. It is now read-only.

Leonmmcoset/leonapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Important

这个项目已迁移到LeonGit上,该项目将会存档。

App Store 项目

这是一个基于 PHP 7.4 的 App Store 项目,使用 Bootstrap 实现 Fluent Design 风格界面,数据存储采用 MySQL 数据库。项目各页面顶栏已添加 logo 图片,路径为 /favicon.jpeg,点击可跳转至首页,图片设置了高度 30px、右边距 10px 以及圆角样式 var(--border-radius)

项目结构

app2/
├── config.php         # 配置文件,包含数据库和管理员信息
├── app_store.sql      # 数据库初始化 SQL 文件
├── index.php          # 首页
├── app.php            # App 信息页
├── admin/             # 管理员后台目录
│   ├── addapp.php
│   ├── deleteapp.php
│   ├── editapp.php
│   ├── index.php
│   ├── login.php
│   ├── manage_tags.php
│   ├── review_apps.php
│   └── system_info.php
├── developer/         # 开发者后台目录
│   ├── dashboard.php
│   ├── edit_app.php
│   ├── login.php
│   ├── logout.php
│   ├── profile.php
│   ├── register.php
│   └── upload_app.php
├── vendor/            # Composer 依赖
├── includes/          # 通用包含文件
├── api.php            # API 接口文件
├── styles.css         # 自定义 CSS 文件
├── images/            # 存储 App 预览图片和年龄分级 SVG
│   ├── age_3plus.svg
│   ├── age_7plus.svg
│   ├── age_12plus.svg
│   ├── age_17plus.svg
├── files/             # 存储 App 文件

环境要求

  • PHP 7.4+
  • MySQL 5.7+
  • Composer
  • Node.js (可选,用于前端资源构建)
  • Web 服务器(如 Apache 或 Nginx)

快速启动指南

对于有经验的开发者,可按照以下步骤快速部署:

# 1. 克隆项目并进入目录
.git clone <repository-url> app2
cd app2

# 2. 创建并配置环境文件
copy config.example.php config.php
# 编辑config.php设置数据库和邮件信息

# 3. 创建数据库并导入结构
mysql -u root -p -e "CREATE DATABASE your_db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
mysql -u root -p your_db_name < app_store.sql

# 4. 安装依赖并设置权限
composer install
icacls files /grant Users:(OI)(CI)W
icacls images /grant Users:(OI)(CI)W

# 5. 启动开发服务器
php -S localhost:8000

访问 http://localhost:8000 开始使用,管理员后台地址:http://localhost:8000/admin

详细安装教程

1. 环境准备

确保您的系统满足以下要求:

  • PHP 7.4+(推荐PHP 8.0+)
  • MySQL 5.7+ 或 MariaDB 10.2+
  • Composer(PHP依赖管理工具)
  • Web服务器(Apache/Nginx/IIS)或PHP内置服务器
  • Git(可选,用于版本控制)

检查PHP环境

打开命令提示符,输入以下命令验证PHP版本:

php -v
# 应显示PHP 7.4.0或更高版本

# 检查必要扩展
php -m | findstr /i "mysqli pdo_mysql json curl fileinfo"
# 确保以上扩展均已安装

2. 获取项目代码

选择以下任一方式获取代码:

方式一:使用Git克隆(推荐)

git clone <repository-url> app2
cd app2

方式二:手动下载

  1. 从项目仓库下载ZIP压缩包
  2. 解压到本地目录(如 c:\web\app2
  3. 打开命令提示符,进入项目目录:
    cd c:\web\app2

3. 数据库配置

创建数据库

  1. 登录MySQL控制台:
    mysql -u root -p
  2. 创建数据库(将your_db_name替换为您喜欢的数据库名称):
    CREATE DATABASE your_db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

exit


#### 导入数据库结构
```cmd
mysql -u root -p your_db_name < app_store.sql

注意:请确保在导入前替换命令中的your_db_name为您实际创建的数据库名称

4. 应用配置

创建配置文件

如果项目中存在config.example.php

copy config.example.php config.php

如果不存在,请手动创建config.php文件并添加以下内容:

<?php
// 数据库配置
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASS', 'your_database_password');
define('DB_NAME', 'your_db_name');

define('APP_URL', 'http://localhost'); // 应用基础URL
define('ADMIN_EMAIL', '[email protected]'); // 默认管理员邮箱
define('ADMIN_PASSWORD', 'admin123'); // 默认管理员密码(首次登录后必须修改)

// 邮件服务配置(用于开发者注册验证)
define('SMTP_HOST', 'smtp.example.com');
define('SMTP_PORT', 465);
define('SMTP_USER', '[email protected]');
define('SMTP_PASS', 'your_email_password');
define('SMTP_ENCRYPTION', 'ssl'); // 通常为ssl或tls

define('DEBUG_MODE', true); // 开发环境设为true,生产环境设为false
?>

配置参数说明

参数 说明 示例值
DB_HOST 数据库主机地址 localhost
DB_USER 数据库用户名 root
DB_PASS 数据库密码 your_actual_password
DB_NAME 数据库名称 app_store
APP_URL 应用访问URL http://localhost/app2
DEBUG_MODE 调试模式开关 true/false

5. 安装依赖

使用Composer安装项目依赖:

composer install

如果没有安装Composer,请先从 https://getcomposer.org/ 下载并安装

6. 设置目录权限

项目需要对以下目录有写入权限:

  • files/:存储上传的应用文件
  • images/:存储应用截图和图标

图形界面方式(推荐)

  1. 在文件资源管理器中找到项目目录
  2. 右键点击files文件夹,选择属性
  3. 切换到安全选项卡,点击编辑
  4. 选择当前用户,勾选写入权限,点击确定
  5. images文件夹执行相同操作

命令行方式

icacls files /grant Users:(OI)(CI)W
icacls images /grant Users:(OI)(CI)W

7. 配置Web服务器

选项A:使用PHP内置开发服务器(推荐用于开发)

php -S localhost:8000

API 文档

根路径 /api

  • 方法:GET
  • 功能:返回可用端点信息
  • 响应示例
{
    "status": "success",
    "message": "App Store API",
    "version": "1.0",
    "endpoints": {
        "/api?action=list": "获取应用列表,支持search、platform、age_rating、tag、page、limit参数。search:搜索关键词;platform:平台;age_rating:年龄分级;tag:标签;page:页码;limit:每页数量",
        "/api?action=app&id=1": "获取指定ID的应用详情,需传入app_id参数。包含应用基础信息、版本、图片、评价和标签信息",

    },
    "example": "GET /api?action=list&search=游戏&limit=10"
}

应用列表 /api?action=list

  • 方法:GET
  • 功能:获取应用列表,支持多条件筛选和分页查询
  • 参数
    • search:搜索关键词,可选
    • platform:平台,可选
    • age_rating:年龄分级,可选
    • tag:标签,可选
    • page:页码,可选,默认1
    • limit:每页数量,可选,默认10
  • 响应示例
{
    "data": [
        {
            "id": "1",
            "name": "示例应用",
            "description": "这是一个示例应用",
            "age_rating": "3+",
            "avg_rating": "4.5"
        }
    ],
    "pagination": {
        "total": 100,
        "page": 1,
        "limit": 10,
        "totalPages": 10
    }
}

应用详情 /api?action=app&id={id}

  • 方法:GET
  • 功能:获取指定ID应用的详细信息,包含基础信息、版本、图片、评价和标签信息
  • 参数
    • id:应用ID,必需,数字类型
  • 响应示例:响应包含应用基础信息、版本、图片、评价和标签信息。