PHP-Script.hu
Kiemelt hirdetés:
2026. október 17. 12:06 szombat, ma Hedvig névnap van


grafika


Videóbázis


Kategória: PHP
Letöltésszámláló
2008.11.10. 21:14

Sziasztok nem régiben csináltam egy egyszerű letöltésszámlálót és szeretném megosztani veletek. Két függvényt fogok használni, leírom őket és majd részletesen elmagyarázom minden sorát, hogy mi mire jó. És a használatukat is.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function CounterWrite($path, $counters_path) //Ez a fv. fog majd fájlba írni
{
if(isset($_GET['file']))
{
if(file_exists($path.$_GET['file']))
{
$file = fopen($counters_path.$_GET['file'].'.txt', 'r+');
$count = fread($file,100);
fclose($file);
$file = fopen($counters_path.$_GET['file'].'.txt', 'w+');
$count = $count+1;
fwrite($file,$count);
fclose($file);
 
header('Location: '.$path.$_GET['file']);
}
}
}
 
 
 
function CounterRead($filename)//Ez a fv. fog majd fájlból kiolvasni a számot
{
$file = fopen('counters/'.$filename.'.txt','r+');
$count = fread($file,100);
fclose($file);
if($count == '')
{
$count = 0;
}
return $count;
}

Fájlbaíró függvény:
function CounterWrite($path, $counters_path) : Két paramétert használok: fájl elérési útját és a számláló .txt-nek az elérési útját.

if(isset($_GET['file'])) : Ez megnézi, hogy van-e a címsorban &file get metódus.

if(file_exists($path.$_GET['file'])) : Ez megnézi, hogy létezik-e a fájl, ha létezik akkor -
$file = fopen($counters_path.$_GET['file'].'.txt', 'r+'); - megnyitja az adott számláló fájlok elérési útján lévő txt-t.
$count = fread($file,100); - aztán kiolvassa belőle a számot
fclose($file); - bezárjuk a fájlt ez fontos!
header('Location: '.$path.$_GET['file']); : Ez elirányítja a fájlhoz, amit majd letölt a felhasználó.

Ezek után megnyitjuk a fájlt újra csak most írásra (W+) és a $count változó tartalmához hozzáadunk 1-et és beírjuk a fájlba: fwrite($file,$count); Utána újra lezárjuk a fájlt.

Ezt a fájlbaíró függvény-t az oldal valmelyik részébe egy <?php ?> jelek közé helyezed. így: <php CounterWrite('fájlok', 'számlálók') ?>

Olvasó függvény:
function CounterRead($filename) : Egy paraméteres. Csak a fájlnak a nevét és az kiterjesztését kell megadni.
$file = fopen('counters/'.$filename.'.txt','r+'); : ugyan az mint az írásnál, kiolvassuk a fájlt.
$count = fread($file,100); : tartalmát (számot) a $count változóba rakjuk.
fclose($file); : bezárjuk a fájlt.

if($count == '')
{
$count = 0;
} //ez csak ha véletlen üres lenne a fájl, akkor a $count értéke 0 lesz. És a felhasználónak nem a semmit fogja megjeleníteni, hanem a 0-át.

Méh néhány alap dologgal ki lehetne egészíteni a függvényt, de szerintem ez is elég.
Használata: <?=CounterRead('file.exe')?> A designtól függ hogy hova akarod, hogy megjelenjen.

Szerkesztette: pato


 Szerző: userpato Hozzászólások(0) Hozzászólások Megosztás az iWiW-en Megosztás az Facebook-on Megosztás a Google Reader-ben Megosztás az Twitter-en 

Listázás:  Idő szerint:
Webprogramozás arr Tutorialok info Letöltésszámláló

Ebbe a topikba még nem érkezett hozzászólás.

Listázás:  Idő szerint:


© 2006-2026 PHP-Script.hu, Minden jog fenntartva!
Design: Rácz Gergely, Oldalmotor: Rácz Gergely
Impresszum - Oldaltörténet - Oldalszabályzat