我们正在尝试创建一个引用系统,外部网络发布商可以在其网站上的某个网页上放置一些html链接回我们网站上的特定产品页面。为了解决这个问题,我们称之为“徽章”。
一旦他们插入徽章,我们想要识别这个,然后抓住< h1>并且第一个< p>作为预告片,包含从我们的网站回到他们的网站的链接,并将所有这些内容写入我们的数据库。然后,我们的用户可以看到他们页面的标题和第一位,然后决定他们是否想看到更多。
以下是我们所做的事情(恐怕不多):
<a href="http://www.mysite.com/abc.html">
<img alt="abc" src="http://www.mysite.com/logo.gif" style="width:200px;height:100px" />
</a>
我们计划建立一个管理页面来完成抓取&lt;的最后一部分。 H1&GT;和&lt; p为H.并将其发布到实时数据库等,我们稍后会详细说明。
然而,中间步骤(确定已经使用了这段HTML)我们不知所措。
这是我们应该通过日志文件做的事情......我甚至不知道如何开始考虑它。
从哪里开始处理这个问题的方向非常有帮助。
提前致谢!!
答案 0 :(得分:2)
这是一种方法。
你给他们的HTML看起来像:
<a href="http://www.mysite.com/abc.html">
<img alt="abc" src="http://www.mysite.com/logo.php" style="width:200px;height:100px" />
</a>
请注意logo.php
,而不是logo.gif
。
logo.php
将存在于您的服务器上。其目的有两个:
<img>
标记如果您将html嵌入到某个网页上,logo.php将会提供有关图像请求源自何处的信息。具体来说,$_SERVER['HTTP_REFERER']
将为您提供img标记所在页面的完整URL。然后由您决定如何处理和存储该信息。
我不知道你想要做什么,但是一个非常简化的logo.php看起来像这样:
<?php
$url = $_SERVER['HTTP_REFERER'];
// do something with $url...
// it will be something like "http://theirsite.com/wherever/they/pasted/the.html"
// now output the logo image...
header("Content-Type: image/gif");
echo file_get_contents("/path/to/logo.gif");
请记住每次任何人使用图片标记点击其网页时,都会运行logo.php。因此,不要意外地在您的网站上创建10000个链接回到他们的网站:)