[gd library] Bezoekers teller, grafisch

Door Josko , 16 jaar geleden, 2.200x bekeken

dit script is Object georiƫnteerd geprogrammeerd.
Maakt gebruik van de php image functies en je database.

/*
CREATE TABLE `count` (
`id` int(11) NOT NULL auto_increment,
`time` int(11) NOT NULL default '0',
`ip` mediumtext NOT NULL,
UNIQUE KEY `id` (`id`)
)
*/
Aanmaak.
relatief simpel:
/*
$Teller = new QCounter()
$Teller->__construct(
string Host,
string Db_user,
string Db_password,
string Db_database,
HtmlColor achtergrond,
HtmlColor tekstkleur,
HtmlColor grafiek,
HtmlColor indexering-text,
HtmlColor indexering-streep,
int x,
int y
);
*/
type string = "hoiblaatblub";
die je wel kent. met HtmlColor bedoel ik
"#EFEFEF" of iets dergelijks.

dus een voorbeeld:
/*

$count = new QCounter();
$count->__construct("localhost", "fg", "fg", "Josko", "#E6E6E6", "#000000", "#FF0000", "#000000", "#333333", 400, 500);

*/

preview is voorlopig te zien op:
http://www.zchosting.nl/Storage/GraphicCount.php?tryout=true

deze test zit ook in het script zelf.

Voorbeeld: http://www.zchosting.nl/Storage/tellerscript/test22.php

Gesponsorde koppelingen

PHP script bestanden

  1. gd-library-bezoekers-teller-grafisch

 

Er zijn 10 reacties op 'Gd library bezoekers teller grafisch'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Josko
josko
16 jaar geleden
 
0 +1 -0 -1
ik moet even zeggen, QCounter noem ik hem...
Ben in c++ bezig met Qt-libraries, en daarom ben ik alles als automaatje
met een Q ervoor aant noemen.

iedere keer als je hem vernieuwd, krijg je iets anders te zien.
dit komt door
/*
$max = rand( 100, 10000);
$logs = array(
rand(10, $max),
rand(10, $max),
rand(10, $max),
rand(10, $max),
rand(10, $max),
rand(10, $max),
rand(10, $max)
);
*/

succes :)


ik kwam er tot mijn schrik achter dat ik wat ben vergeten.
in de constructor moeten nog 2 argumenten:
int x, int y
de afmetingen dus.


Ja ik edit veel :p
Harmen
Harmen
16 jaar geleden
 
0 +1 -0 -1
eeeh.... dit is toch niet de bedoeling? :
http://img443.imageshack.us/img443/4679/gek8pr.jpg
Josko
josko
16 jaar geleden
 
0 +1 -0 -1
uhmz jawel? alleen beetje te kleine breedte, de getallen groeien aan elkaar :p
Josko
josko
16 jaar geleden
 
0 +1 -0 -1
Lachen random getallen heb je overigens :p
Pieter Boussaer
Pieter Boussaer
16 jaar geleden
 
0 +1 -0 -1
In firefox zie ik niets op het voorbeeld
PurpleMadness -
PurpleMadness -
16 jaar geleden
 
0 +1 -0 -1
@Pieter:
Wel als je vernieuwd ;)
Hier dan tenminste.
Jelmer -
Jelmer -
16 jaar geleden
 
0 +1 -0 -1
Ik vind het wel een beetje mistig waarom je func_get_args gebruikt, en niet gewoon old fashioned function __construct($a, $b, $c ... $x = 100, $y = 50). Meteen is duidelijker leesbaar welk argument wat is, en je kan standaardwaarden duidelijk aangeven.

Ook vreemd dat je __construct gebruikt, dat is PHP5, maar je gebruikt wel 'var' voor variabelen, en (PHP4, PHP5 depricated) geen static, private, public en protected keywords (PHP5 aangeraden) Ook heb je geen PHP4-constructor (function classNaam() {)

Waarom Heigt en QArrayRGB buiten de klasse houden? Ze zijn toch duidelijk onderdeel en vrij essentieel.

En uitvoer, en dan vooral die() midden in je klasse, daar ben ik niet gecharmeerd van. Moet het hele script dood als er een foutje optreed in deze klasse? Is hij daadwerkelijk zo essentieel? Ook de mysql-connectie binnen de klasse. Ik denk dat veel mensen al een verbinding open hebben staan, waarom dan nog eentje? (PHP gebruikt dan trouwens gewoon dezelfde nog een keer, maar dan met een reference extra)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$sql = "SELECT * FROM count WHERE time='".$this->date."' AND ip='".$ip."'";

Misschien een idee om het veel snelllere SQL COUNT() te gebruiken in plaats van alle regels ophalen?

Nu nog wat om je op te vrolijken: Mooi gebruik van variabelenamen, je kan aan de naam zien wat de inhoud is, en dat is goed.
Josko
josko
16 jaar geleden
 
0 +1 -0 -1
func get args vond ik leuker, en dan krijg je minder gezeik als ie hem niet kan vinden. al moet ik er eigenlijk nog escapes voor zetten.

en de constructors:
heeft ermee te maken dat ik oop begin vanaf c++, de manual begint over __contruct en static $blaat, terwijl het thuis foutmeldingen geeft

blijkt dat idd die versie verschillen zijn.

en de COUNt(*) had ik geen zin in.
Arwin  vdv
Arwin vdv
16 jaar geleden
 
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jeroen
Jeroen
15 jaar geleden
 
0 +1 -0 -1
Ligt het aan mij of werkt het voorbeeld niet?

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. gd-library-bezoekers-teller-grafisch

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.