Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Jak zrobić jednorazowe linki?
Forum PHP.pl > Forum > Gotowe rozwiązania
abdiel
Witam!
Mam pewien problem. Poszukuje rozwiązania, może nie koniecznie gotowego, ale chociaż naprowadzenia mnie na właściwy tor.
Chodzi dokładnie o jednorazowe linki. Wchodzi sobie zarejestrowany użytkownik na stronkę. Nie wiem czy to bedzie autorski CMS, czy np. Joomla.
Wchodzi i kilka na specjalnie wygenerowany dla niego wcześniej link, z którego może pobrać sobie dokument, lub inny plik, po czym po pobraniu tego pliku, link znika i jest już nieaktywny.
Jak można coś takiego zrobić?
Będę wdzięczny za pomoc, lub chociaż naprowadzenie mnie na poprawny tor rozumowania.
Jeżeli zły dział, to przepraszam.
Pozdr,
Abdiel.
blooregard
Do URL-a dodajesz kod, np 40-znakowy, generowany losowo i zapisujesz go w bazie, w tabeli z polem, powiedzmy "clicked" ustawionym na 0. Jeśli user wejdzie pod ten link, robisz UPDATE bazy i ustawiasz "clicked" na 1. Oczywiście przed tym UPDATE sprawdzasz, czy już wcześniej to pole nie miało wartości 1, co by oznaczło, że już było kliknięte. Wtedy wywalasz ładne okienko: "Sorry, już kliknięty"
Fifi209
Cytat(blooregard @ 25.03.2009, 21:14:30 ) *
Do URL-a dodajesz kod, np 40-znakowy, generowany losowo i zapisujesz go w bazie, w tabeli z polem, powiedzmy "clicked" ustawionym na 0. Jeśli user wejdzie pod ten link, robisz UPDATE bazy i ustawiasz "clicked" na 1. Oczywiście przed tym UPDATE sprawdzasz, czy już wcześniej to pole nie miało wartości 1, co by oznaczło, że już było kliknięte. Wtedy wywalasz ładne okienko: "Sorry, już kliknięty"


Ja bym proponował "kliknięte" po prostu usuwać. A kod to po prostu może być md5(time()) bo nie powtórzy się. ;d
abdiel
Dzięki wielkie za odpowiedź smile.gif
A co jeśli np. user nie pobierze pliku do końca. Czy da się zrobić tak, że link usuwa się po pobraniu pliku. Pytam czysto teoretycznie.
Widziałem kiedyś coś takiego na jakiejś stronce.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.