簡體   English   中英

如何檢查鏈接是否已在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>');

您需要構建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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM