PHP 短链接有效期验证: 如何检查短链接是否过期并返回 404 错误
PHP 短链接有效期验证:如何检查短链接是否过期并返回 404 错误
本文将介绍如何在 PHP 中验证短链接的有效期,如果链接已过期,则返回 404 错误页面。
代码示例
以下是实现此功能的 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;
}
$dqsj = $myrow['dqsj']; // 假设 'dqsj' 是 'BYFH_long' 表中的一个字段
$currentDate = date('Y-m-d'); // 假设当前日期格式为 'Y-m-d'
if ($dqsj < $currentDate) {
@header("http/1.1 404 not found");
@header("status: 404 not found");
include './data/template/no.html';
exit();
}
}
}
代码解析
-
获取查询字符串和短链接 ID: 代码首先从
$_SERVER['QUERY_STRING']获取查询字符串,然后提取短链接 ID。 -
查询数据库: 代码使用
$DB->get_row()从BYFH_long表中查询与短链接 ID 匹配的记录。 -
检查是否找到记录: 如果没有找到匹配记录,则返回 404 错误页面。
-
检查过期时间: 代码从数据库记录中获取
dqsj字段的值(假设dqsj代表过期时间),并将其与当前日期进行比较。 -
返回 404 错误页面: 如果
dqsj小于当前日期,则表示短链接已过期,代码将返回 404 错误页面。
总结
这段代码展示了如何使用 PHP 验证短链接的有效期,并根据结果返回相应的页面。您可以根据实际需求调整代码中的数据库名称、字段名称以及错误页面路径。
注意事项
- 确保
dqsj字段的格式与当前日期格式一致。 - 使用
date()函数获取当前日期时,请根据实际情况指定相应的日期格式。 - 您可以根据需要修改错误页面路径。
- 代码示例仅供参考,您需要根据实际情况进行修改和调整。
希望本文能够帮助您在 PHP 中实现短链接有效期验证功能。
原文地址: https://www.cveoy.top/t/topic/bIgK 著作权归作者所有。请勿转载和采集!