当前位置:首页 > 其他 > 正文内容

简单的PHP网址导航程序

23vps2年前 (2023-06-06)其他760

下面是一个简单的示例,实现一个基于单文件无数据库的 PHP 网址导航程序:

1、创建一个data.json文件,用于存储网址数据。文件内容如下:

阿里云限量代金券 | 此广告位出租25元/月
Bash
{
  "urls": [
    {
      "name": "Google",
      "url": "https://www.google.com"
    },
    {
      "name": "Baidu",
      "url": "https://www.baidu.com"
    },
    {
      "name": "GitHub",
      "url": "https://github.com"
    }
  ]
}

2、创建一个index.php文件,用于显示网址列表。文件内容如下:

PHP
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>网址导航</title>
</head>
<body>
  <h1>网址导航</h1>
  <ul>
    <?php
      $data = json_decode(file_get_contents('data.json'), true);
      foreach ($data['urls'] as $url) {
        echo '<li><a href="' . $url['url'] . '" target="_blank">' . $url['name'] . '</a></li>';
      }
    ?>
  </ul>
</body>
</html>

3、创建一个admin.php文件,用于管理网址列表。文件内容如下:

PHP
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>网址导航 - 管理</title>
</head>
<body>
  <?php
    session_start();
    if (!isset($_SESSION['username'])) {
      header('Location: login.php');
      exit();
    }

    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
      $data = json_decode(file_get_contents('data.json'), true);
      $data['urls'][] = array(
        'name' => $_POST['name'],
        'url' => $_POST['url']
      );
      file_put_contents('data.json', json_encode($data));
      header('Location: admin.php');
      exit();
    }
  ?>
  <h1>网址导航 - 管理</h1>
  <form method="post">
    <label for="name">名称:</label>
    <input type="text" name="name" required>
    <br>
    <label for="url">网址:</label>
    <input type="url" name="url" required>
    <br>
    <button type="submit">添加</button>
  </form>
  <ul>
    <?php
      $data = json_decode(file_get_contents('data.json'), true);
      foreach ($data['urls'] as $key => $url) {
        echo '<li>';
        echo '<a href="' . $url['url'] . '" target="_blank">' . $url['name'] . '</a>';
        echo ' <a href="delete.php?key=' . $key . '">删除</a>';
        echo '</li>';
      }
    ?>
  </ul>
  <a href="logout.php">退出</a>
</body>
</html>

4、创建一个 login.php 文件,用于管理员登录。文件内容如下:

PHP
<?php
  session_start();
  if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    if ($_POST['username'] === 'admin' && $_POST['password'] === '123456') {
      $_SESSION['username'] = $_POST['username'];
      header('Location: admin.php');
      exit();
    } else {
      echo '用户名或密码错误';
    }
  }
?>
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>网址导航 - 登录</title>
</head>
<body>
  <h1>网址导航 - 登录</h1>
  <form method="post">
    <label for="username">用户名:</label>
    <input type="text" name="username" required>
    <br>
    <label for="password">密码:</label>
    <input type="password" name="password" required>
    <br>
    <button type="submit">登录</button>
  </form>
</body>
</html>

5、创建一个 delete.php 文件,用于删除网址。文件内容如下:

PHP
<?php
  $key = $_GET['key'];
  $data = json_decode(file_get_contents('data.json'), true);
  unset($data['urls'][$key]);
  file_put_contents('data.json', json_encode($data));
  header('Location: admin.php');
  exit();
?>

6、创建一个 logout.php 文件,用于管理员退出。文件内容如下:

PHP
<?php
  session_start();
  session_destroy();
  header('Location: login.php');
  exit();
?>

以上就是一个简单的基于单文件无数据库的 PHP 网址导航程序的实现。您可以将这些文件放在一个目录下,通过浏览器访问 index.php 文件来查看网址列表,通过访问 admin.php 文件来管理网址列表。管理员用户名为 admin,密码为 123456。

本程序在php7.2下测试运行正常无报错


效果图:

本网站由提供服务

阅读剩余的64%

扫描二维码推送至手机访问。

版权声明:本文由主机测评网发布,如需转载请注明出处。

本文链接:https://23vps.com/post/73.html

标签: 建站

“简单的PHP网址导航程序” 的相关文章

强大无数据库图床2.0PHP程序

强大无数据库图床2.0PHP程序

项目地址:https://github.com/icret/EasyImages2.0 始于2018年7月,支持多文件上传,简单无数据库,返回图片url,markdown,bbscode,html的一款图床程序 演示地址:https://png.cm/ 之前一直用的图床程序是:PHP多图长...

搭建Syncthing发现和中继服务器和配置Syncthing客户端

搭建Syncthing发现和中继服务器和配置Syncthing客户端

折腾借口Syncthing好是挺好的,但就是同步不给力,公共网络服务其质量参差不齐,网络也说不清。最好的解决方案还是自己搭建发现服务器Syncthing Discovery Server和中继服务器Syncthing Relay Server,有效解决网络连接差,非局域网连接慢的问题。不同于Resi...

parsec串流远程桌面神器,用远程桌面可以玩游戏

parsec串流远程桌面神器,用远程桌面可以玩游戏

主机哥最近发现一款不错的国外远程桌面工具,可以内网穿透直连,甚至可以流畅玩游戏看视频不卡顿,都说很厉害,自己台式机电脑上装了一下,但是用我自己笔记本电脑连接台式机时提示-15000错误:点击Read More弹出链接:https://support.parsec.app/hc/en-us/artic...

Nginx打开目录浏览功能(autoindex)

主机要分享一些文件给朋友下载,但是文件数量又比较多,而且需要分很多个文件夹进行分类以便根据需要下载不必整个打包在一起下载,下面介绍利用nginx自带的autoindex配置来实现下载服务器的文件遍历来列出整个目录供朋友浏览下载。宝塔站点修改nginx配置文件,在server段添加下面代码 ...

php文件分享代码,可设置分享链接有效期并隐藏真实下载地址

这是一个简单的PHP文件分享程序,以下是程序的基本功能:首页需要登录才能显示显示指定目录下的所有文件给每个文件生成分享按钮点击分享按钮会自动复制分享链接分享链接1小时后失效,无法从分享链接中找到真实下载源请注意,这个程序只是一个简单的示例,您需要根据具体需求进行修改和优化,并加强安全措施。以下是程序...