Már van két ilyen témájú cikk a tutorial.hu oldalon (Egyszerű oldalszámláló PHP-val (írta: Lyzu)) és „Egyszerű számláló készítése weblapunkra” (Írta: BlackY)), de mindkettőnek van egy közös hibája: szövegesek. A BlackY Scriptek kategóriában található counter.zip ezt a hibát küszöböli ki…
A programnak szüksége van az ún GD (képmanipuláló) könyvtár meglétére, ami ingyenes tárhelyeken kérdéses, így ezeken működése nem garantált!
A program működése röviden összefoglalva annyi, hogy egy külső fileból (counter.txt az alapbeállítás) kiveszi az addig történt oldalehívások számát, és hozzá ad egyet, majd egy a megadott méretű képet létrehoz és a számjegyenkből „összerakja” a végleges képet… A programban a következő beállításokat változtathatjuk meg:
1 2 3 4 5 | $counterfile = 'counter.txt'; $digits = '8'; $imagedir = 'images'; $filewidth = '150'; $fileheight = '30'; |
A $counterfile változó megmondja, hogy melyik fájlban van a számláló… A $digits változó a megjelenített számjegyeket adja meg. Amennyiben az addig elért látogatottságunk kevesebből áll, akkor „feltölti” 0-kal… (Az elején, természetesen :D ) Az $imagedir változó annak a könyvtárnak a nevét adja meg, ahol a számjegyeket tartalmazó képek vannak. Ezekről annyit, hogy 0-tól 9-ig kell lennie a nevüknek és png típusúnak kell lenniük. A $filewidth és $fileheight a megjelenített végső kép szélességét és magasságát adja meg, ám ettől eltérhet a végleges az egészszámra való kerekítések miatt!
(Lásd.: 150:8=18,75. Ez 19-re lesz kerekítve és visszaszorozva 8-al (19*8=152))
A használata nagyon egyszerű, töltsük fel a fileokat a szerverre (például egy counter mappába) és utánna oda, ahove szeretnénk egy számlálót helyezni a következőt írjuk be:
1 | <img src="counter/counter.php" /> |
(Feltételezve, hogy a counter mappába tettük!)
Ezután az oldalunkat megtekintve már egy szuper high-tect számláló fog minket fogadni… :)
letöltés: counter.zip
Szerző: BlackY
Szia Harder!
Nekem valamiért nem jól működik, mert amikor 1-el növexik a látogatottság, akkor nem a végére írja az új számot, hanem az első karaktert írja mindig át.
Tehát ha 4 jegyű számot kell kiírnia, akkor a kiírásban az első szám, a négyjegyű szám utolsó karaktere, és a a számláló végén írt 3 szám pedig a négyjegyű szám első 3 karaktere…
Hű hát ez nem lett egy egyszerű mondat :)
Tudsz segíteni abban, mi lehet a gond?
Köszi: Graffy
Graffy: megnéztem és rájöttem, hogy mi a hiba (persze csak ha tőlem is elfogadod a választ :P)
találsz a counter.php-ban egy ilyen sort:
módosítani kell erre:
valamint van egy ilyen sort
amit erre kell módosítani:
Maga a hiba onnan eredt, hogy valami miatt a key függvénynek rossz volt a visszatérési értéke (0 helyett az első értéke 1 volt, és a $numbers tömb 7-es indexű elemét NULL indexűnek dobta vissza :S).
Valamint az előző üziből kimaradt, viszont ez a sor az átalakítás után már teljesen felesleges, így kitörölheted:
További szép napot és jó php-zást :)
Nagyon köszönöm, így működik! :)
Szia Harder!
Én nekem olyan problémám van, hogy amikor feltöltöm az oldalta számlálóval az ATW oldalára akkor tökéletesen működik és növekszik a számláló. Viszont amikor feltöltöm a vásárolt Domain címre/serverre akkor valamiért nem növekszik hanem minidg ugyan azt a számot adja vissza, mintha nem mentené el ‘és nem is menti’ a counter.txt-be az adatokat.
Ákos: a szerveren a counter.txt fájlnak milyen attribútumai vannak? Általában 644-es szokott lenni, ami csak olvasási jogot jelent, de írni nem lehet, ezért érdemes 777-es jogot beállítani.
Ha véletlen nem menne az attribútum beállítás, akkor ezt kukkold meg: http://www.tutorial.hu/chmod-beallitasai/
Köszönöm szépen a segítséget erről még nem is halottam :D. De mostmár ennyivel okosabb lettem.
Még egyszer köszönöm.
sziasztok!
bocsi, de elég kezdővagyok, és sajnos nem találom a megoldást a következő problémámra:
nem tudom mozgatni a számlálót. :((
hol és mit kell átírni ahhoz hogy változtatni tudjam a számláló helyét az oldalamon?
u.i.:nagyon jól működik a számláló! köszönöm!
sziasztok!
A Freewebes szerveren működik a BlackY féle számláló? Én ugyan is feltettem, de nem jelenik meg a kép
Köszi
Soma
ez mind szép és mind jó…de ha php vel includolom a tartalmat hogy az oldal ne töltöődjön be mindig (ezzel:
akkor ha másik menüre kattintok akkor is görgeti eggyel a számlálót.
a számláló:
<?php
$filename = ‘latogatas_szamlalo/counter.txt’;
// Megnyitjuk a file-t és kiszedjük belole az eddigi értéket
if(!$fileopened = @fopen($filename, ‘r’)) {
// Valamiért nem sikerült megnyitni a filet (rosssz az atríbuma), akkor hagyjuk az egészet :)
exit();
}
$counter = @fgets($fileopened,1024);
// Hozzáadunk egyet, és kiírjuk az eredményt a weboldalra
$counter++;
// Újra megnyitjuk a filet és beleírjuk az új eredményt
if(!$fileopened = @fopen($filename, ‘w’)) {
// Ha nem sikerült megnyitni (nincs írásjog), akkor kiírjuk az eredményt, és hagyjuk az egészet :)
exit();
}
@fwrite($fileopened, $counter);
@fclose($fileopened);
szal erre tudtok megoldást??
Tisztelt Lapszerkesztő!
Engem egy weblap számláló érdekelne, ki is másoltam a counter.php fájlt,
A számsort át alakítottam, ami nekem tetszik, images könyvtárban, a
counter.txt fájl 0-ról indúlt, jól működik, kszönöm. Csak az a baj, hogy tizen-től a számok nem egymás mellett vannak. Pl. 15 igy mutat: 500000001
Elküldöm a web-kódot.
Ha lenne szives igazítani rajta, szívesen megköszönném.
Tisztelettel: Admin Lap.
Kedves Admin Lap.
Jó régi ez a kód, kicsit felújítva és a felesleges dolgok rövidítve:
Köszönöm a számlálót és a javítást.
Jól működik!!!
Sanya