Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kilka licznikow na jednej stronie
frogger14
post
Post #1





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 1.02.2004
Skąd: ziemia

Ostrzeżenie: (0%)
-----


Siema, mam na stronie kilkadziesiat gierek online (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) i chcialbym zrobic dla kazdej gry licznik, ilerazy grano w dana gre (czyli poprostu licznik klikniec w dany odsylacz). Z tego co widzialem w skryptach downloadu jest cos takiego ze jest kilkadziesiat plikow i kazdy ma osobny licznik.

Czy mozecie pomoc ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Xinn
post
Post #2





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 20.04.2003
Skąd: Krosno

Ostrzeżenie: (0%)
-----


hmmm nie wiem czy o cos takiego ci chodzi... ale ja proponuje cos takiego:





plik funkcje.php [lub jakikolwiek inny jaki chcesz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ]

[php:1:c016da2544]<?php
$sciezka = "liczniki"; //bez '/' na koncu

function licznik_dodaj($id_licznika)
{
global $sciezka;
if (file_exists("$sciezka/$id_licznika.dat"))
{
$counter=fopen("$sciezka/$id_licznika.dat", "r");
flock($counter, 1);
$liczniczek=fgets($counter, 200);
flock($counter, 3);
fclose($counter);

$liczniczek++;

$counter=fopen("$sciezka/$id_licznika.dat", "w");
flock($counter, 2);
fwrite($counter, $liczniczek);
flock($counter, 3);
fclose($counter);
}
else
{
$counter=fopen("$sciezka/$id_licznika.dat", "w");
flock($counter, 2);
fwrite($counter, '1');
flock($counter, 3);
fclose($counter);
chmod("$sciezka/$id_licznika.dat", 666); // nie jestem pewien czy przy tworzeniu pliku odrazu ma on chmoda 666... to tak na wszelki wypadek ;-)
}
}

function licznik_pokaz($id_licznika)
{
global $sciezka;
if (file_exists("$sciezka/$id_licznika.dat"))
{

$counter=fopen("$sciezka/$id_licznika.dat", "r");
flock($counter, 1);
$liczniczek=fgets($counter, 200);
flock($counter, 3);
fclose($counter);
echo $liczniczek;
}
else
{
echo 'brak pliku'."$sciezka/$id_licznika.dat";
}
}

?>[/php:1:c016da2544]

teraz mozesz to uzyc w sposob np taki:

[php:1:c016da2544]<?php
include "funkcje.php";

licznik_dodaj('1');
licznik_pokaz('1');

?>[/php:1:c016da2544]

wyjasnienie...
funmkcja licznik_dodaj sluzy do dodania [zwiekszenia] liczby odslon o 1 (wywowylana poprzez
licznik_dodaj(jakis_ciag_znakow);
zas
licznik_pokaz(jakis_ciag_znakow); do pokazywania wartosci danego counterka... )
mozesz rowniez tworzyc liczniki niewidzialne... wtedy tylko pozbywasz sie (nie piszesz licznik_pokaz('1'); w kodzie strony...)

jak tego dokladniej uzywac?
masz np strone gry.php kazda gra jest rozrozniana poprzez $_GET[id]
mianowicie gry sa wywolywane poprzez gry.php?id=5 (gdzie id to numer gry...)
w takim wypadku do strony gry.php wystarczy ze dodasz na poczatku strony


[php:1:c016da2544]<?php
include "funkcje.php";

licznik_dodaj($_GET[id]);
?>[/php:1:c016da2544]

a pozniej w miejscu gdzie chcesz aby sie licznik wyswietlal:
[php:1:c016da2544]<?php
licznik_pokaz($_GET[id]);
?>[/php:1:c016da2544]

MALA UWAGA... w pliku funkcje.php (czyli tym pierwszym co ci napisalem) masz zmienna $sciezka.. odpowiada oina za sciezke w ktorej beda przechowywane dane counterkow (musisz pierw taki folderek utworzyc i dac mu chmoda 777 )

jesli dalej czegos nie rozumiesz to pisz tutaj...

btw... moge dostac adres strony na PW? tak sie sklada ze prowadze vortal o podobnej tematyce
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 22:54