首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跟踪图像视图- PHP

问跟踪图像视图- PHP
EN

Stack Overflow用户
提问于 2010-12-30 07:40:19
回答 4查看 2.6K关注 0票数 2

我希望我的应用程序能够判断一个图像是否在过去30天内没有被查看过,并将其删除(以及数据库中与其相关的数据)。我知道你可以让PHP动态读取和输出图像,但我听说这对系统来说相当繁重。有没有办法让我跟踪这些点击,即使图像是直接查看的?( htaccess能做到这一点吗?)提前谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-12-30 07:47:06

您可以解析出HTTP日志,并在事后进行此分析。

也就是说,我仍然推荐使用“动态PHP文件输出图像”的方法-注意,PHP文件可以简单地流出文件。是的,它会比不使用PHP慢一些,但它不会对您的系统造成显著的性能影响。

票数 3
EN

Stack Overflow用户

发布于 2010-12-30 07:54:29

对于.htaccess来说,像这样的东西...

代码语言:javascript
复制
RewriteRule ^image/(.*)$ image.php?id=$1

对于PHP..。

代码语言:javascript
复制
$id = $_GET["id"]; //don't forget to sanitize
mysql_query("UPDATE images SET views = views + 1 WHERE image = '$id'"); //update no of views
header("Content-Type: image/jpeg"); //send image header
readfile($id); //output file to browser
票数 6
EN

Stack Overflow用户

发布于 2010-12-30 07:48:53

您可以创建一个脚本来获取图像并ping您的数据库,以显示图像已被查看。通过将脚本的返回类型设置为image/jpg,您可以直接使用此脚本,而不是直接访问图像:

代码语言:javascript
复制
<?php
//simplified image display script

$imagepath="phpimages/$id.jpg";
$db->pingImage($id);
$image=imagecreatefromjpeg($imagepath);
header('Content-Type: image/jpeg');
imagejpeg($image);

?>

然后使用:

代码语言:javascript
复制
<img src='fetchimage.php?id=478' alt='tracked image' />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4558850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档