From 30152e81e8039ef5a302a35bb96523775ceed466 Mon Sep 17 00:00:00 2001 From: ghol Date: Sat, 11 Oct 2025 19:10:16 +0000 Subject: [PATCH] =?UTF-8?q?deepseek=20=E5=86=99=E7=9A=84=E4=B8=AA=E4=BA=BA?= =?UTF-8?q?=E5=AF=BC=E8=88=AA=E7=9A=84=E9=A1=B5=E9=9D=A2=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deepseek/url.php | 875 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 875 insertions(+) create mode 100644 deepseek/url.php diff --git a/deepseek/url.php b/deepseek/url.php new file mode 100644 index 0000000..95a0ba5 --- /dev/null +++ b/deepseek/url.php @@ -0,0 +1,875 @@ + + + + + + + 个人导航管理系统 + + + + +
+ + + + + +
+
+

个人导航管理系统

+ +
+
+ +
+ +
+ + +
+

我的导航链接

+
+ + +
+
+ + +
+ +
+ + + + + + + + + + + + password_hash('admin123', PASSWORD_DEFAULT) + ]; + file_put_contents(USER_FILE, json_encode($users)); + } + + // 初始化链接数据文件 + if (!file_exists(DATA_FILE)) { + $default_links = [ + [ + 'id' => 1, + 'title' => 'GitHub', + 'url' => 'https://github.com', + 'category' => '开发资源' + ], + [ + 'id' => 2, + 'title' => 'Stack Overflow', + 'url' => 'https://stackoverflow.com', + 'category' => '开发资源' + ], + [ + 'id' => 3, + 'title' => '腾讯云', + 'url' => 'https://cloud.tencent.com', + 'category' => '云服务' + ] + ]; + file_put_contents(DATA_FILE, json_encode($default_links)); + } +} + +/** + * 处理认证逻辑 + */ +function handle_authentication() { + // 检查会话是否过期 + if (isset($_SESSION['last_activity']) && (time() - $_SESSION['last_activity'] > SESSION_TIMEOUT)) { + session_unset(); + session_destroy(); + session_start(); + } + $_SESSION['last_activity'] = time(); + + // 处理登录请求 - 只有在明确是登录操作时才处理 + if (isset($_POST['action']) && $_POST['action'] === 'login') { + $username = $_POST['username'] ?? ''; + $password = $_POST['password'] ?? ''; + + if (authenticate_user($username, $password)) { + $_SESSION['logged_in'] = true; + $_SESSION['username'] = $username; + header('Location: ' . $_SERVER['PHP_SELF']); + exit; + } else { + $_SESSION['message'] = '用户名或密码错误!'; + header('Location: ' . $_SERVER['PHP_SELF']); + exit; + } + } + + // 处理退出请求 - 只有在明确是退出操作时才处理 + if (isset($_POST['action']) && $_POST['action'] === 'logout') { + session_unset(); + session_destroy(); + header('Location: ' . $_SERVER['PHP_SELF']); + exit; + } +} + +/** + * 用户认证 + */ +function authenticate_user($username, $password) { + if (!file_exists(USER_FILE)) { + return false; + } + + $users = json_decode(file_get_contents(USER_FILE), true); + + if (isset($users[$username]) && password_verify($password, $users[$username])) { + return true; + } + + return false; +} + +/** + * 检查是否已登录 + */ +function is_logged_in() { + return isset($_SESSION['logged_in']) && $_SESSION['logged_in'] === true; +} + +/** + * 处理链接操作 + */ +function handle_link_operations() { + if (!is_logged_in()) { + return; + } + + $action = $_POST['action'] ?? $_GET['action'] ?? ''; + + switch ($action) { + case 'save_link': + save_link(); + break; + case 'delete_link': + delete_link(); + break; + case 'save_category': + save_category(); + break; + case 'delete_category': + delete_category(); + break; + case 'edit_link': + // 只是显示编辑模态框,不需要特殊处理 + break; + } +} + +/** + * 保存链接 + */ +function save_link() { + $links = get_links(); + $id = intval($_POST['link_id'] ?? 0); + $title = trim($_POST['title'] ?? ''); + $url = trim($_POST['url'] ?? ''); + $category = trim($_POST['category'] ?? ''); + + if (empty($title) || empty($url) || empty($category)) { + $_SESSION['message'] = '请填写所有必填字段!'; + $_SESSION['message_type'] = 'error'; + return; + } + + // 如果是编辑现有链接 + if ($id > 0) { + foreach ($links as &$link) { + if ($link['id'] === $id) { + $link['title'] = $title; + $link['url'] = $url; + $link['category'] = $category; + break; + } + } + } else { + // 添加新链接 + $new_id = !empty($links) ? max(array_column($links, 'id')) + 1 : 1; + $links[] = [ + 'id' => $new_id, + 'title' => $title, + 'url' => $url, + 'category' => $category + ]; + } + + if (save_links($links)) { + $_SESSION['message'] = $id > 0 ? '链接更新成功!' : '链接添加成功!'; + $_SESSION['message_type'] = 'success'; + } else { + $_SESSION['message'] = '操作失败,请重试!'; + $_SESSION['message_type'] = 'error'; + } + + header('Location: ' . $_SERVER['PHP_SELF']); + exit; +} + +/** + * 删除链接 + */ +function delete_link() { + $id = intval($_GET['id'] ?? 0); + + if ($id <= 0) { + return; + } + + $links = get_links(); + $new_links = array_filter($links, function($link) use ($id) { + return $link['id'] !== $id; + }); + + if (save_links(array_values($new_links))) { + $_SESSION['message'] = '链接删除成功!'; + $_SESSION['message_type'] = 'success'; + } else { + $_SESSION['message'] = '删除失败,请重试!'; + $_SESSION['message_type'] = 'error'; + } + + header('Location: ' . $_SERVER['PHP_SELF']); + exit; +} + +/** + * 保存分类 + */ +function save_category() { + $old_name = trim($_POST['old_category_name'] ?? ''); + $new_name = trim($_POST['category_name'] ?? ''); + + if (empty($new_name)) { + $_SESSION['message'] = '分类名称不能为空!'; + $_SESSION['message_type'] = 'error'; + return; + } + + $links = get_links(); + $updated = false; + + foreach ($links as &$link) { + if ($link['category'] === $old_name) { + $link['category'] = $new_name; + $updated = true; + } + } + + if ($updated && save_links($links)) { + $_SESSION['message'] = empty($old_name) ? '分类添加成功!' : '分类更新成功!'; + $_SESSION['message_type'] = 'success'; + } else { + $_SESSION['message'] = '操作失败,请重试!'; + $_SESSION['message_type'] = 'error'; + } + + header('Location: ' . $_SERVER['PHP_SELF']); + exit; +} + +/** + * 删除分类 + */ +function delete_category() { + $category_name = urldecode($_GET['name'] ?? ''); + + if (empty($category_name)) { + return; + } + + $links = get_links(); + $new_links = array_filter($links, function($link) use ($category_name) { + return $link['category'] !== $category_name; + }); + + if (save_links(array_values($new_links))) { + $_SESSION['message'] = '分类删除成功!'; + $_SESSION['message_type'] = 'success'; + } else { + $_SESSION['message'] = '删除失败,请重试!'; + $_SESSION['message_type'] = 'error'; + } + + header('Location: ' . $_SERVER['PHP_SELF']); + exit; +} + +/** + * 获取链接数据 + */ +function get_links() { + if (!file_exists(DATA_FILE)) { + return []; + } + + $data = file_get_contents(DATA_FILE); + return json_decode($data, true) ?: []; +} + +/** + * 保存链接数据 + */ +function save_links($links) { + return file_put_contents(DATA_FILE, json_encode($links, JSON_PRETTY_PRINT)) !== false; +} + +/** + * 获取分类列表 + */ +function get_categories($links) { + $categories = []; + foreach ($links as $link) { + if (!in_array($link['category'], $categories)) { + $categories[] = $link['category']; + } + } + return $categories; +} + +?> \ No newline at end of file