[php] licznik sciagniec

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
Krzysztof Sziwa

[php] licznik sciagniec

Post autor: Krzysztof Sziwa »

jak zrobic taki licznik - gotowy kod wraz z objasnieniem co do czego, bede wdzieczny ;)

mam w dziale pliki kilka linkow:

Kod: Zaznacz cały

<a href="/pliki/111.exe">111.exe</a>
<a href="/pliki/222.exe">222.exe</a>
<a href="/pliki/333.exe">333.exe</a>
do kazdego z tych linkow chce przypisac osobny plik tekstowy z iloscia sciagniec oraz jeden plik tekstowy zliczajacy wszystkie sciagniecia

plik z funkcja liczaca zostanie zainkludowany na poczatku plikowni

a liczbe sciagniec wyswietlilbym sobie po zainkludowaniu danego pliku tekstowego przypisanego linkowi
Krzysztof Sziwa

Re: [php] licznik sciagniec

Post autor: Krzysztof Sziwa »

juz zrobilem oto rozwiazanie:

w katalogu w ktorym trzymamy swoje pliki tworzymy sobie plik php o dowolnej nazwie a wnim:

Kod: Zaznacz cały

<? 
  $rozszerzenie = "";  
  $tempkat = "temp/";  // katalog w ktorym beda nasze pliki tekstowe

  if (file_exists("$bierz$rozszerzenie"))  // sprawdza czy nasz plik istnieje
       { 
        header("location: $bierz$rozszerzenie"); 
    $plik = fopen("$tempkat/$bierz$rozszerzenie.txt","r+"); // otwiera plik do odczytu i zapisu
    $licz = fread($plik, filesize("$tempkat/$bierz$rozszerzenie.txt"));  // odczytuje zawartosc pliku
    fclose($plik);  // zamyka plik
    $licz += 1;  // zwieksza wartosc odczytanego pliku o 1
    $plik = fopen("$tempkat/$bierz$rozszerzenie.txt","w+"); // otwiera plik do odczytu i zapisu
    fputs($plik, $licz); // zapisuje nowa wartosc do pliku
    fclose($plik);

 $plik = fopen("$tempkat/wszystkie.txt","r+");  // otwiera plik ze statystykami wszystkich sciagniec
 $licz = fread($plik, filesize("$tempkat/wszystkie.txt")); 
 fclose($plik); 
 $licz += 1; 
 $plik = fopen("$tempkat/wszystkie.txt","w+"); 
 fputs($plik, $licz); // zapisuje plik z nowa wartoscia do pliku ze statsami wszystkiego
 fclose($plik);
 
       } 
  else
    echo "<center><br><br>Pliku [<b>$bierz$rozszerzenie</b>] nie ma na serwerze.<br>";  // jezeli pliku nie ma wyswietli ten komunikat
?> 
w miejscu gdzie ma byc link do danego pliku w zucamy to:

Kod: Zaznacz cały

<a href="sciezka/do/pliku/ze/statsami.php?bierz=nazwapliku">blabla</a> // jezeli w pliku ze statsami zdefiniowalismy zmienna $rozszerzenie to przy nazwa pliku nie musimy go wpisywac
w miejscu gdzie maja byc statystyki naszego jednego pliku wzucamy to:

Kod: Zaznacz cały

<?  include("sciezka/do/naszego/$kattemp/naszplik.txt"); ?>
jezeli chcemy sobie wyswietlic gdzies na stronie ile jest wszystkich sciagniec wpisujemy to:

Kod: Zaznacz cały

<?
print("Pobrań programu:");

$plik = fopen("sciezka/do/pliku/ze/statsami/wszystkiego.txt","r");
$111 = fread($plik, filesize("sciezka/do/pliku/ze/statsami/wszystkiego.txt"));
fclose($plik);

$wszystkie = ($111);

print(" $wszystkie");

?>
przydatne gdy chcemy dla roznych dzialow z plikami np mody, skiny prowadzic statystyki sciagniec wszystkich plikow
ODPOWIEDZ