Kliknięcie na link - zapis do loga, pobranie pliku

Kliknięcie na link - zapis do loga, pobranie pliku
HI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1863
0

Wita.

Pytanie jest pewnie banalne, ale dla mnie wszystko co związanie z web jest czarną magią ;).

Chce wrzucić na stronę link, ale zależy mi na tym aby wiedzieć ile razy (kiedy) został kliknięty.

Wiem jak do linku dodać funkcję w JS, ale z tego co widzę to w ten sposób nie dam rady zapisać do MySQL czy do pliku.

Jak w takim razie powinienem to zrobić?

Freja Draco
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3394
1

Pytanie brzmi, czy adres, pod który linkujesz, jest twój, czy jakiś zewnętrzny?

  • Jeśli twój, to robisz na stronie docelowej normalne logowanie w PHP, ew. filtrując tylko użytkowników, którzy przyszli tam z określonego adresu.
  • Jeśli nie twój, to zostaje jakieś
    • <a href="cośtam" onclick="moja_funkcja_ajax();">opis</a>, która zapisze ci to kliknięcie w logach,
    • ew. link z przekierowaniem, coś w stylu <a href="mojastrona.pl/zliczaczklikow?adres_docelowy=obcastrona.pl">opis</a>, a pod zliczaczklikow podpinasz sobie normalne php z zapisem do logów i przekierowaniem na stronę docelową.
HI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1863
0

@Freja Draco: linkuje do pliku na moim serwerze.

robisz na stronie docelowej normalne logowanie w PHP

Jakieś słowo klucz :)?

Freja Draco
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3394
1

Prościutki kod zapisujący do pliku wejścia na stronę:

Kopiuj

<?php
// --- odczyt danych
$epokau=date("U");
$data=date("Y.m.d");
$godzina=date("H:i:s");

$adresip="-";
$system="-";
$przyszedl="-";

// adres i system
$adresip=$_SERVER["REMOTE_ADDR"];
$system=$_SERVER["HTTP_USER_AGENT"];
if (isset($_SERVER['HTTP_REFERER'])==true) $przyszedl=$_SERVER['HTTP_REFERER'];

// filtrowanie
$system=strip_tags($system);
$przyszedl=strip_tags($przyszedl);
// --- /odczyt danych


// --- zapis danych
$statystyka=fopen("staty/lista_otwartych_stron.txt","a");
  flock($statystyka, 2);
  fputs($statystyka,"\n$data^$godzina^$adresip^$przyszedl^$system^$epokau^");
  flock($statystyka, 3);
fclose($statystyka);
// --- /zapis danych
?>
czysteskarpety
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Piwnica
  • Postów: 7697
2

A ja uzupełnię skrypcikiem: CCount - click and download counter
https://www.phpjunkyard.com/php-click-counter.php

HI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1863
0

Dziękuję Panowie.

Skorzystałem ze skryptu zaproponowanego przez @czysteskarpety - to było naprawdę proste :).

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.