如何在 php 中检查链接是否已被点击


How to check if a link has been clicked in php

好吧,我是新手,所以我想记录用户何时单击 php 打印的链接并查询 mysql 数据库。我已经知道如何使用 php 查询数据库,但我不确定是否可以知道用户是否点击了链接。

我打印了一个这样的链接。

print ('<a id="myLink" href="http://www.google.com" target="_blank">google</a>');

要跟踪链接,您需要在服务器上创建一个链接跟踪脚本。 即链接跟踪器.php

然后,更改您的代码以将链接指向该脚本,传递转发 URL,即

<a id="myLink" href="http://mysite.com/linktracker.php?url=http://www.google.com" target="_blank">google</a>

在linktracker.php中,你需要这样的东西:

<?php 
    $url = $_GET['url'];
    // update your database click count for the url
    //  i.e UPDATE linkclicks SET clickcount = clickcount + 1 WHERE url = '$url'
    // forward the user to the end location
    header("Location: $url"); 

您需要构建 URL 重定向机制。

$link = 'http://www.google.com';
echo '<a href="/redir.php?target="'.encodeUriComponent($link).'>google</a>';

然后进行修订.php:

<?php
$targetUrl = $_REQUEST['target'];
// log this targetUrl to your MySQL database.
header( 'Location:'.$targetUrl);

如果你想尝试跟踪链接共享或类似性质的东西,我绝对不会在 JavaScript 中这样做。

添加onclick="handleClick()"并编写名为handleClick的JavaScript函数,以将点击报告给服务器,例如ajax

除非链接指向您自己的站点,否则您需要使用客户端脚本语言(如JavaScript)(也可以利用jQuery)将用户的点击事件发送回服务器。