以下是 PHP 代码,用于验证短链接的过期时间,防止访问过期的短链接。

$str = $_SERVER['QUERY_STRING'];
$result = substr($str, strrpos($str, '.') + 1);
$keyu = substr($result, 0, 1);

if ($keyu == 1) {
    $t_urll = $_SERVER['QUERY_STRING'];
    $uid = substr($t_urll, 0, strrpos($t_urll, '.'));
    $myrow = $DB->get_row('select * from BYFH_long where uid='$uid' limit 1');
    if (!$myrow) {
        @header('http/1.1 404 not found');
        @header('status: 404 not found');
        include './data/template/no.html';
        exit();
    } else {
        $t_url = $myrow['longurl'];
        if ($t_url == $t_url) {
            $t_url = $t_url;
        }
        // Add check for dqsj expiration
        $dqsj = $myrow['dqsj'];
        if (strtotime($dqsj) < time()) {
            @header('http/1.1 404 not found');
            @header('status: 404 not found');
            include './data/template/no.html';
            exit();
        } else {
            // continue with the rest of the code
        }
    }
}

代码解释:

  1. 获取短链接: 使用 $_SERVER['QUERY_STRING'] 获取当前请求的查询字符串,即短链接 URL。
  2. 提取 URL ID: 使用 substrstrrpos 函数从短链接中提取 URL ID(假设 ID 在短链接中使用 . 分隔)。
  3. 数据库查询: 使用 $DB->get_row 从数据库 BYFH_long 中查询与该 URL ID 对应的记录。
  4. 验证链接存在: 如果查询结果为空,表示该链接不存在,返回 404 错误页面。
  5. 验证过期时间: 如果链接存在,则验证其过期时间 dqsj 是否已经过去。如果过期,返回 404 错误页面。
  6. 重定向: 如果链接存在且未过期,则获取原始 URL longurl,并将用户重定向到该 URL。

注意:

  • 此代码假设 dqsj 字段存储的是日期时间格式的字符串。
  • $DB 是一个数据库连接对象,你需要根据你的数据库连接方式进行修改。
  • './data/template/no.html' 是 404 错误页面模板文件路径,请根据实际情况进行调整。

SEO 优化:

  • 标题和描述应该包含关键词,例如 'PHP 短链接', '过期时间', 'URL 缩短', '代码示例' 等。
  • 关键词应该包含在内容中,并使用合理的密度。
  • 内容应该清晰易懂,并提供有价值的信息。
  • 使用合适的 HTML 结构和语义化标签。
  • 使用图片和视频来丰富内容。
  • 链接到相关内容。
  • 提交网站到搜索引擎。

示例:

{'title': 'PHP 短链接 URL 缩短服务:过期时间验证', 'description': '此 PHP 代码示例演示了如何验证短链接的过期时间,防止访问过期的短链接。代码使用 $_SERVER['QUERY_STRING'] 获取短链接,提取 URL ID,并从数据库 BYFH_long 中查询相应的记录。如果链接存在且未过期,则将用户重定向到原始 URL。否则,返回 404 错误页面。', 'keywords': 'PHP, 短链接, URL缩短, 过期时间, 404错误, 数据库查询, 代码示例', 'content': '以下是 PHP 代码,用于验证短链接的过期时间,防止访问过期的短链接。

```php
$str = $_SERVER['QUERY_STRING'];
$result = substr($str, strrpos($str, '.') + 1);
$keyu = substr($result, 0, 1);

if ($keyu == 1) {
    $t_urll = $_SERVER['QUERY_STRING'];
    $uid = substr($t_urll, 0, strrpos($t_urll, '.'));
    $myrow = $DB->get_row('select * from BYFH_long where uid='$uid' limit 1');
    if (!$myrow) {
        @header('http/1.1 404 not found');
        @header('status: 404 not found');
        include './data/template/no.html';
        exit();
    } else {
        $t_url = $myrow['longurl'];
        if ($t_url == $t_url) {
            $t_url = $t_url;
        }
        // Add check for dqsj expiration
        $dqsj = $myrow['dqsj'];
        if (strtotime($dqsj) < time()) {
            @header('http/1.1 404 not found');
            @header('status: 404 not found');
            include './data/template/no.html';
            exit();
        } else {
            // continue with the rest of the code
        }
    }
}

代码解释:

  1. 获取短链接: 使用 $_SERVER['QUERY_STRING'] 获取当前请求的查询字符串,即短链接 URL。
  2. 提取 URL ID: 使用 substrstrrpos 函数从短链接中提取 URL ID(假设 ID 在短链接中使用 . 分隔)。
  3. 数据库查询: 使用 $DB->get_row 从数据库 BYFH_long 中查询与该 URL ID 对应的记录。
  4. 验证链接存在: 如果查询结果为空,表示该链接不存在,返回 404 错误页面。
  5. 验证过期时间: 如果链接存在,则验证其过期时间 dqsj 是否已经过去。如果过期,返回 404 错误页面。
  6. 重定向: 如果链接存在且未过期,则获取原始 URL longurl,并将用户重定向到该 URL。

注意:

  • 此代码假设 dqsj 字段存储的是日期时间格式的字符串。
  • $DB 是一个数据库连接对象,你需要根据你的数据库连接方式进行修改。
  • './data/template/no.html' 是 404 错误页面模板文件路径,请根据实际情况进行调整。

SEO 优化:

  • 标题和描述应该包含关键词,例如 'PHP 短链接', '过期时间', 'URL 缩短', '代码示例' 等。
  • 关键词应该包含在内容中,并使用合理的密度。
  • 内容应该清晰易懂,并提供有价值的信息。
  • 使用合适的 HTML 结构和语义化标签。
  • 使用图片和视频来丰富内容。
  • 链接到相关内容。
  • 提交网站到搜索引擎。
PHP 短链接 URL 缩短服务:过期时间验证

原文地址: https://www.cveoy.top/t/topic/bH41 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录