有这样一个需求,一个列表页上有n多的链接地址,要求打开显示一次内容后就失效,(注意:所有的内容都是通过接口获得的,需要proxy对方生成的页面,不可直接暴露对方url避免被分享)。
使用PHP实现。请高手现身帮帮忙,谢谢。
注意,这个链接打开一次是指不能复制分享,而不是说,换台电脑又能打开了。
有这样一个需求,一个列表页上有n多的链接地址,要求打开显示一次内容后就失效,(注意:所有的内容都是通过接口获得的,需要proxy对方生成的页面,不可直接暴露对方url避免被分享)。
使用PHP实现。请高手现身帮帮忙,谢谢。
注意,这个链接打开一次是指不能复制分享,而不是说,换台电脑又能打开了。
写代码还得调试,不喜欢……
给个简单思路吧。
没仔细看题……同一思路下更正……
数据库主要表:
表一:
访问码 链接
表二:
proxy次数
Proxy:
每次Proxy时,表二中proxy次数+1
每个链接和proxy次数共同进行摘要作为访问码(比如把proxy次数与链接连成一个字符串再进行MD5),写入表一
根据访问码以类似go.php?xxxxx的形式输出页面中的链接。其中xxxxx是访问码。
访问链接:
页面上点击访问的是go.php?xxxxx形式的链接,其中xxxxx是访问码。
根据访问码在数据库中查询表一条目,找不到就是链接失效。找到的话,取出链接用于跳转,同时删除条目确保下次访问失效。
类似阅后即焚咯?
read字段,如果read = false则加载内容并设置read = true,若read = true则返回没有的状态。
<code class="lang-php"><?php
if (已经访问过了) {
exit('链接已经失效');
} else {
在数据库中记录这个链接被访问了;
exit('我是内容我是内容');
}
?>
</code>
用当前浏览器UA+IP的hash值做密钥
将地址(如a.php?id=3)中的id进行加密得到加密字符串(如abcdefg)
然后列出地址b.php?id=abcdefg,php对ID进行解密。不能解密就报错不允许访问。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号