[英]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>');
您需要構建URL重定向機制。
$link = 'http://www.google.com';
echo '<a href="/redir.php?target="'.encodeUriComponent($link).'>google</a>';
然后制作一個redir.php:
<?php
$targetUrl = $_REQUEST['target'];
// log this targetUrl to your MySQL database.
header( 'Location:'.$targetUrl);
如果您想嘗試跟蹤鏈接共享或類似性質的內容,我絕對不會在JavaScript中執行此操作。
要跟蹤鏈接,您需要在服務器上創建鏈接跟蹤腳本。 即linktracker.php
然后,更改代碼以將鏈接指向該腳本,並傳遞轉發網址,即
<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");
添加onclick="handleClick()"
並編寫名為handleClick
javascript函數,以將報告的點擊報告給使用Ajax的服務器
除非鏈接指向您自己的站點,否則您將需要使用客戶端腳本語言(例如JavaScript)(也可以使用jQuery)將用戶的click事件發送回服務器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.