Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP + MYSQL] Link + mySQL Query
Forum PHP.pl > Forum > PHP
peja1990
Witam.
Mam pewien problem.
Gdyż chcę zrobić pobieranie pliku z wykonaniem zapytania do mySQL.
Mianowicie chodzi o to aby po kliknięciu w link zupdatowało kolumnę w bazie z ilością pobrań
Czy byłby ktoś w stanie mi pomóc ?

Dodam, że może się to odbywać poprzez target="_blank" ale żeby po zamknięciu okna pobierania automatycznie się ono (target="_blank") zamknęło.
Tak jak dzieje się to na większości stronach downloadowych.
plej
znasz php? mysql?

czy trzeba ci cały skrypt napisac tu?
no i baze danych być napisał by było łatwiej:)
CuteOne
1. Każdy plik zapisujesz do bazy danych np w postaci
id | file_name | file_storage | file_hash | downloaded | status

2. Za pomocą PHP tworzysz hash każdego pliku np. md5($row['id'].$row['file_name']); i updatetujesz pole file_hash ($row to wiersz pobrany z bazy danych)

3. Za pomocą PHP tworzysz linki w postaci np.
  1. echo '<a href="index.php?action=download&file='.$row['file_hash'].'">'.$row['file_name'].'</a>';


4. Tworzysz plik download.php a w nim odczytujesz zmienną $_GET['file'] (czyli file_hash z bazy danych) i na jej podstawie pobierasz z bazy file_storage (ścieżka do pliku) oczywiście nic nie stoi na przeszkodzie aby po pomyślnym pobraniu file_storage updateować bazę np. zwiększając ilość pobrań o 1 (downloaded w bazie)

5. Reszta to wymuszenie pobierania - poczytaj na google o header()
peja1990
Cytat
znasz php? mysql?

czy trzeba ci cały skrypt napisac tu?
no i baze danych być napisał by było łatwiej:)


Znam wink.gif

Cytat
1. Każdy plik zapisujesz do bazy danych np w postaci
id | file_name | file_storage | file_hash | downloaded | status

2. Za pomocą PHP tworzysz hash każdego pliku np. md5($row['id'].$row['file_name']); i updatetujesz pole file_hash ($row to wiersz pobrany z bazy danych)

3. Za pomocą PHP tworzysz linki w postaci np.
[PHP] pobierz, plaintext
echo '<a href="index.php?action=download&file='.$row['file_hash'].'">'.$row['file_name'].'</a>';


4. Tworzysz plik download.php a w nim odczytujesz zmienną $_GET['file'] (czyli file_hash z bazy danych) i na jej podstawie pobierasz z bazy file_storage (ścieżka do pliku) oczywiście nic nie stoi na przeszkodzie aby po pomyślnym pobraniu file_storage updateować bazę np. zwiększając ilość pobrań o 1 (downloaded w bazie)

5. Reszta to wymuszenie pobierania - poczytaj na google o header()


Dzięki, teraz powinienem ogarnąć.
Ew. jak coś to jeszcze napiszę.

CuteOne - pomógł poleciał wink.gif
Później to przetestuję bo teraz wylatuję biggrin.gif
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-2025 Invision Power Services, Inc.