Weblog stats

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

Fullstack Developer TOTO

Do you want to work with the latest technologies on the development of new systems and applications? Get moving and strengthen Nederlandse Loterij as a Fullstack Developer TOTO. Thanks to your efforts, complex business critical applications are always running smoothly. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Fullstack Developer you score by: Taking ownership of the development cycle of an application in a large scale, high availability, geo redundant landscape Coaching your peer developers and safeguarding code quality Integrating the application with other components of the system using the available API’s Managing

Bekijk vacature »

Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Opleveren van mooie eindproducten, middels de Agile methodiek; Samenwerken in een team van 10 collega's; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

PHP developer - Digital Agency

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

Ervaren PHP ontwikkelaar

Functie Jij als PHP ontwikkelaar komt te werken in een team van 4 andere PHP ontwikkelaars. Je zult je voornamelijk bezig houden met: – Het ontwikkelen van nieuwe features – Doorontwikkelen van de API – Nadenken over de technische infrastructuur – Datakwaliteit Samen met het team ben jij verantwoordelijk voor de verdere ontwikkeling van de software en om de positie als marktleider in Europa te behouden. Ze werken volgens SCRUM in 2 wekelijkse sprints, werken met Jira voor alle tickets en communiceren veel via Slack. Eisen • Minimaal 3 jaar ervaring als back end developer • Je hebt affiniteit met

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Cobol Developer

Dit ga je doen Als Cobol Ontwikkelaar zal je gaan meebouwen aan een onderdeel van het backend systeem waarbij je het functionele ontwerp vertaald naar een technische oplossing die geïntegreerd kan worden in de huidige omgeving. Je zorgt ervoor dat de bedrijfsprocessen op een efficiënte manier worden uitgevoerd en werkt proactief aan het verbeteren hiervan. Samen met jouw collega’s reviewen jullie elkaars code en test je je eigen code. Je werkt nauw samen met andere ontwikkelaars, testers en functioneel ontwerpers. Taken pakket: Beheren en doorontwikkelen van de bestaande omgeving; Vertalen van een functionele vragen naar een technische oplossing; Doorvoeren van

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET developer start jij in een development team met twee ervaren software ontwikkelaars. Jouw persoonlijke ontwikkeling is voor ons erg belangrijk en jij gaat dan ook meelopen met onze Senior .NET ontwikkelaar die jou met zijn kennis en ervaring een goede begeleiding kan aanbieden. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit

Bekijk vacature »

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar een Embedded Software developer. Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij enthousiast en een echte team player? Lees dan snel verder en laat wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot aantal creatieve en ambitieuze ontwikkelaars. Ze

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Integratie expert - Java Developer

Dit ga je doen Nieuw koppelingen ontwerpen, ontwikkelen en implementeren; Je schakelt met de klanten om hen zo goed mogelijk van dienst te zijn. Strategisch kijken naar nieuwe mogelijkheden op bestaande of nieuwe koppelingen zo effectief mogelijk te realiseren; Je bestaande toolset afwegen tegen nieuwe mogelijkheden om integratiedoelen steeds effectiever en/of effcienter te bewerkstelligen; Bestaande software koppelingen beheren, dit zijn koppelingen met zowel interne als externe systemen; Overleg met zowel directe collega's als met stakeholders om nieuwe integratieplannen concreet te maken; Je kunt de junioren meenemen op sleeptouw. Hier ga je werken Onze klant is op zoek naar een ervaren

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET developer

Functie Als senior .NET ontwikkelaar en aankomend lead developer ben jij in één van de drie development teams verantwoordelijk voor het volgende: • Jij hebt een oogpunt op modernisering en bent verantwoordelijk voor de technische staat en architectuur van de applicatie; • Jij bent verantwoordelijk voor het reviewen van de technische haalbaarheid van verschillende onderwerpen; • Jij bent verantwoordelijk voor een goede aansluiting binnen het multidisciplinaire team en de bijbehorende taken; • Jij bent verantwoordelijk voor het aandragen van verbetervoorstellen en ontwikkelstandaarden in zowel de techniek als architectuur; • Jij bent meewerkend voorman en ondersteunt en coacht jouw team op

Bekijk vacature »
Stephan de vries

stephan de vries

27/11/2006 09:25:00
Quote Anchor link
Hallo,

Op ik heb een weblog met een statistieken systeem.
Deze statistieken geven aan hoevaak index.php, log.php enz. zijn bezocht.

Ik ben echter op zoek naar een statistiekenscript dat aangeeft hoevaak een log is bezocht.

Bijvoorbeeld:
www.weblog.com/log.php?id=115
Zo werkt het op mijn site ook.
Ik ben dus op zoek naar een statistieken script, liefst zo simpel mogelijk, waarin ik kan zien hoevaak www.weblog.com/log.php?id=115 is bezocht (en uiteraard ook id=116, id=117 enz.).

Ik ben een echte leek en heb nog weinig verstand van php dus als je een oplossing hebt hou het aub simpel zodat ik het snap

Thanx
 
PHP hulp

PHP hulp

27/05/2026 05:58:29
 
Joren de Wit

Joren de Wit

27/11/2006 09:58:00
Quote Anchor link
Op de pagina log.php selecteer je op een gegeven moment neem ik aan gegeven uit een database. Dit doe je aan de hand van de GET variabele 'id' die in de url staat.

Wat je zou kunnen doen is op het punt waar je de gegevens uit de database selecteert, ook een nieuw record in bijvoorbeeld een tabel statistieken aanmaken. Je tabel statistieken ziet er dan ongeveer als volgt uit:

statistieken
--------------
id
log_id
datum

In elk nieuw record plaats je dus het id, dat in de GET variabele 'id' staat, en de huidige datum. Later kun je dan op een andere pagina de gegevens weer uit deze tabel halen.
 
Stephan de vries

stephan de vries

27/11/2006 13:20:00
Quote Anchor link
mmm, oké.
Dit is mijn log.php, wat zou ik dan moeten veranderen?

----------------------------------------------------------------
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?
require_once('global.inc.php');
setstats("Log");
$template = new template();
$template->menu;

$id = trim($_GET['id']);
$sql = mysql_query("SELECT * FROM weblog WHERE id='".$id."'");
$num = mysql_num_rows($sql);

if(isset($_GET['id']) && $num != 0){

    if(!isset($_POST['submit'])){

        while($row = mysql_fetch_assoc($sql)){


                        $content['1'] = "<small> </small>

                        "
. ubb($row['bericht']) . "<br>
                       <br>

                        "
. $row['datum'] . " | " . $row['categorie'] . " | " . $row['schrijver'] . " ";

    
            $template->content($content['1'],stripslashes($row['titel']));

        }


        if(isset($_GET['reageren'])){

            $template->content(reactie_weblog("?id=".$id));

        }
else{

            $sql = mysql_query("SELECT * FROM reacties WHERE wid='".$id."'");
            $num = mysql_num_rows($sql);

            if($num == 0){
                
                $template->content(ubb("Er zijn nog [i]geen[/i] reacties op deze log!"));

            }
else{

                $content['1'] = "";
                $i = 0;

                while($row = mysql_fetch_assoc($sql)){

                    $i++;
                    $content['1'] .= "<center><table width=394 style='border: 1px solid #B9B7B7;'><tr><td width=10>&nbsp;</td><td width=384>" . ubb($row['bericht']) . "</td></tr><tr><td bgcolor=\"#E3E3E3\" colspan=2>by: <b>" . $row['auteur'] . ":</b> " . $row['datum'] . "</td></tr></table></center><br>";


                    if($num != $i){
                    
                        $content['1'] .= "";

                    }

                }


                $template->content($content['1'],'Reacties');

            }


            $template->content(reactie_weblog("?id=".$id),'Reageren');

        }

  

    }
else{

        $naam = trim($_POST['naam']);
        $mail = trim($_POST['mail']);
        $bericht = trim($_POST['bericht']);
        $wid = trim($_GET['id']);

        if(strlen($naam) > 3 && strlen($mail) > 7 && strlen($bericht) > 5){

            $ip = $_SERVER['REMOTE_ADDR'];
            $day = array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
            $month = array("niet", "januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december");

            $w = date("w");
            $j = date("j");
            $n = date("n");
            $Y = date("Y");
            $tijd = date("H") . date(":i");

            $datum = $day[$w] . ", " . $j . " " . $month[$n] . " " . $Y . " om " . $tijd;

            $sql = mysql_query("INSERT INTO reacties (auteur,ip,datum,bericht,mail,wid) VALUES ('".$naam."','".$ip."','".$datum."','".$bericht."','".$mail."','".$wid."')") or die(mysql_error());

            header("Location: log.php?id=".$wid);

        }
else{
            
            $fouten = "";
            if(strlen($naam) < 3)
            {

                $fouten .= "- Je ingevulde naam is te kort! (moet langer dan 3 tekens)<br>";
            }

            if(strlen($mail) < 7)
            {
    
                $fouten .= "- Het ingevulde mailadres is te kort! (moet langer dan 7 tekens zijn)<br>";
            }

            if(strlen($bericht) < 5)
            {
    
                $fouten .= "- Het ingevulde bericht is te kort! (moet langer dan 5 tekens)<br>";
            }


            $template->content("De volgende fouten zijn opgetreden:<br>".$fouten."<br>Klik <a href=\"javascript: history.go(-1)\">hier</a> om terug te keren.",'Fout!');

        }

    }

}
else{

    header("Location: index.php");

}


$template->output();
?>

----------------------------------------------------------------
 
Joren de Wit

Joren de Wit

27/11/2006 13:30:00
Quote Anchor link
Ik neem aan dat je op dit moment de statistieken update met de functie setstats()? Je zou kunnen kijken of je deze functie verder kunt uitbreiden zodat ook de views per log opgeslagen worden.

Als alternatief zou je zelf zo'n soort functie kunnen schrijven waarbij elk view per log in de database opgeslagen wordt.

Maar kun je misschien even laten zien hoe de functie setstats() eruit ziet, dan is dat punt ook weer wat duidelijker.
 
Arjan Schuurman

Arjan Schuurman

27/11/2006 14:12:00
Quote Anchor link
je sou ook alemaal txt bestandjes per id kunnen aanmaken en dan bijv. "ID"counter.txt +1 telkens doen...
 
Joren de Wit

Joren de Wit

27/11/2006 14:21:00
Quote Anchor link
Please, ga niet met txt bestandjes werken als je ook een database tot je beschikking hebt. Zodra jij je verlaagt tot het niveau van de txt bestanden ontzeg je jezelf alle toegang tot de krachtige functies die een database in zich heeft.
 
Stephan de vries

stephan de vries

27/11/2006 14:36:00
Quote Anchor link
Class.statistieken.inc.php ziet er bij mij zo uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
<?php

function setstats($page)
{

    $datum = mktime(0,0,0,date("n"),date("j"),date("Y"));
    $maand = date("n");
    $jaar = date("Y");
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    

    $een = mysql_num_rows(mysql_query("SELECT * FROM stats WHERE type='1'"));
    if($een == 0){ @mysql_query("INSERT INTO stats (type,value1,value2,datum) VALUES ('1','0','0','".$datum."')"); }

    @
mysql_query("DELETE FROM stats WHERE type='4' AND datum !='".$datum."'");

    // Totaal
    $sql = @mysql_query("SELECT count(1) FROM stats WHERE type='4' AND ip='".$ip."'");
    $bezoek = @mysql_result($sql, 0);
    if($bezoek == 0)
    {
        @
mysql_query("UPDATE stats SET value1=value1+1, value2=value2+1 WHERE type='1'");
        @
mysql_query("INSERT INTO stats (type,datum,ip) VALUES ('4','".$datum."','".$ip."')");
    }

    else
    {
        @
mysql_query("UPDATE stats SET value2=value2+1 WHERE type='1'");
    }


    // Dagelijks
    $sql = @mysql_query("SELECT count(1) FROM stats WHERE type='2' AND datum='".$datum."'");
    if(@mysql_result($sql, 0) == 0)
    {
        @
mysql_query("INSERT INTO stats (type,value1,value2,datum,maand,jaar) VALUES ('2','1','1','".$datum."','".$maand."','".$jaar."')");
    }

    else
    {
        if($bezoek == 0)
        {
            @
mysql_query("UPDATE stats SET value1=value1+1, value2=value2+1 WHERE type='2' AND datum='".$datum."'");
        }

        else
        {
            @
mysql_query("UPDATE stats SET value2=value2+1 WHERE type='2' AND datum='".$datum."'");
        }
    }


    // Pagina's
    if(!empty($page))
    {

        $sql = @mysql_query("SELECT count(1) FROM stats WHERE type='3' AND extra='".$page."'");
        if(@mysql_result($sql, 0) == 0)
        {
            @
mysql_query("INSERT INTO stats (type,extra,value1) VALUES ('3','".$page."','1')");
        }

        else
        {
            @
mysql_query("UPDATE stats SET value1=value1+1 WHERE type='3' AND extra='".$page."'");
        }
    }


    // unset variabelen
    unset($datum);
    unset($maand);
    unset($jaar);
    unset($ip);
    unset($sql);
    unset($bezoek);
}


$land_img = array('images/lnd_nld.gif','images/lnd_bel.gif','images/lnd_unk.gif');

function
getstats()
{

    $terug = array();
    $datum = mktime(0,0,0,date("n"),date("j"),date("Y"));
    $maand = date("n");
    $jaar = date("Y");

    $vandaag = mysql_fetch_assoc(mysql_query("SELECT * FROM stats WHERE type='2' AND datum='".$datum."'"));
    array_push($terug, 'Vandaag');
    array_push($terug, '<table border="0" width="100%"><tr><td>Uniek:</td><td width="100">'.$vandaag['value1'].'</td></tr><tr><td>Hits:</td><td width="100">'.$vandaag['value2'].'</td></tr></table>');

    $totaal = mysql_fetch_assoc(mysql_query("SELECT * FROM stats WHERE type='1'"));
    array_push($terug, 'Totaal <small>| Sinds: '.date('d-m-Y', $totaal['datum']));
    array_push($terug, '<table border="0" width="100%"><tr><td>Uniek:</td><td width="100">'.$totaal['value1'].'</td></tr><tr><td>Hits:</td><td width="100">'.$totaal['value2'].'</td></tr></table>');

    $highest_uniek = mysql_fetch_assoc(mysql_query("SELECT * FROM stats WHERE type='2' ORDER BY value1 DESC LIMIT 0,1"));
    $highest_hits = mysql_fetch_assoc(mysql_query("SELECT * FROM stats WHERE type='2' ORDER BY value2 DESC LIMIT 0,1"));
    array_push($terug, 'Records');
    array_push($terug, '<table border="0" width="100%"><tr><td>Uniek:</td><td width="100">'.date("d-m-Y", $highest_uniek['datum']).'</td><td width="100">'.$highest_uniek['value1'].'</td></tr><tr><td>Hits:</td><td width="100">'.date("d-m-Y", $highest_hits['datum']).'</td><td width="100">'.$highest_hits['value2'].'</td></tr></table>');

    //Dagen
    $dag = '<table border="0" width="100%">';

    $dag_naam = array('Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag');

    for($i=0; $i <= 6; $i++)
    {

        $datum2 = mktime(0,0,0,$maand,date("d")-$i,$jaar);
        $sql = @mysql_query("SELECT value1, value2 FROM stats WHERE type='2' AND datum='".$datum2."'");
        if(@mysql_num_rows($sql)==0)
        {

            $stats['bezoekers'] = 0;
            $stats['hits'] = 0;
        }

        else
        {
            $list = @mysql_fetch_array($sql);
            $stats['bezoekers'] = $list['value1'];
            $stats['hits'] = $list['value2'];
        }

        if($stats['bezoekers'] != 0)
        {

            $dag .= '<tr><td>'.$dag_naam[date("w",$datum2)].'</td>
                <td width="100">Uniek:</td>
                <td width="100">'
.$stats['bezoekers'].'</td>
            </tr>
            <tr>
                <td style="border-bottom: 1px solid #dedede;">&nbsp;</td>
                <td width="100" style="border-bottom: 1px solid #dedede;">Hits:</td>
                <td width="100" style="border-bottom: 1px solid #dedede;">'
.$stats['hits'].'</td>
            </tr>'
;
        }
    }

    $dag .= '</table>';
    array_push($terug, 'Afgelopen week');
    array_push($terug, $dag);

    for($i=0; $i <= 5; $i++)
    {

        if($maand-$i < 1)
        {

            $maand2 = 12-($i-$maand);
            $jaar2 = $jaar-1;
        }

        else
        {
            $maand2 = $maand-$i;
            $jaar2 = $jaar;
        }

        $sql = @mysql_query("SELECT SUM(value1) AS value1, SUM(value2) AS value2 FROM stats WHERE type='2' AND jaar='".$jaar2."' AND maand='".$maand2."' GROUP BY maand");
        if(@mysql_num_rows($sql) == 0)
        {

            $maand_bezoekers[$maand2] = 0;
            $maand_hits[$maand2] = 0;
        }

        else
        {
            $row = @mysql_fetch_array($sql);
            $maand_bezoekers[$maand2] = $row['value1'];
            $maand_hits[$maand2] = $row['value2'];
        }
    }


    $maand3 = '<table border="0" width="100%">';
    $maand_naam = array('','Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');

    for($i=0; $i <= 5; $i++)
    {

        if($maand-$i < 1)
        {

            $maand2 = 12-($i-$maand);
            $jaar2 = $jaar-1;
        }

        else
        {
            $maand2 = $maand-$i;
            $jaar2 = $jaar;
        }

        if($maand_bezoekers[$maand2] != 0)
        {

            $maand3 .= '<tr><td>'.$maand_naam[$maand2].'</td>
                <td width="100">Uniek:</td>
                <td width="100">'
.$maand_bezoekers[$maand2].'</td>
            </tr>
            <tr>
                <td style="border-bottom: 1px solid #dedede;">&nbsp;</td>
                <td width="100" style="border-bottom: 1px solid #dedede;">Hits:</td>
                <td width="100" style="border-bottom: 1px solid #dedede;">'
.$maand_hits[$maand2].'</td>
            </tr>'
;
        }
    }

    $maand3 .= '</table>';
    array_push($terug, 'Afgelopen half jaar');
    array_push($terug, $maand3);

    $sql = @mysql_query("SELECT extra, value1 FROM stats WHERE type='3' ORDER BY value1 DESC");
    $pagina = '<table border="0" width="100%">';
    $i = 1;
    while($list = @mysql_fetch_array($sql))
    {

        $pagina .= '<tr><td>'.$i.'. ' . $list['extra'] . '</td>
            <td width="100">Hits:</td>
            <td width="100">'
. $list['value1'] . '</td>
        </tr>'
;
        $i ++;
    }

    $pagina .= '</table>';
    array_push($terug, 'Hits per pagina');
    array_push($terug, $pagina);

    return $terug;    
}


?>
 
Joren de Wit

Joren de Wit

27/11/2006 14:43:00
Quote Anchor link
Dit script is verreweg van netjes. Je gebruikt overal @-tje om fouten te onderdrukken, terwijl je juist wilt zien als er wat fout gaat. Deze functies bevatten totaal geen foutafhandeling en dat is toch wel de basis van een goed script.

Daarnaast klopt je datamodel ook niet. Je bent kolommen aan het nummeren en van overzichtelijkheid is ook weinig sprake. Over het algemeen is het voor jezelf een indicatie dat zodra je kolommen gaat nummeren, je te maken hebt met een incorrect datamodel. Ik zou serieus overwegen om dit aan te passen.

Kijk eens naar de tutorial over normaliseren hier op deze site. Dat is de basis van een goed datamodel.
 
Eris -

Eris -

27/11/2006 14:51:00
Quote Anchor link
Slimme vragen stellen.

Voor de regels over het posten van scripts. 200 regels lijkt mij niet nodig
 
Stephan de vries

stephan de vries

27/11/2006 19:03:00
Quote Anchor link
Sorry dat ik het op die manier post. Zoals ik al aangaf ben ik echt een leek. Ik heb het weblog gekregen van iemand. Door de volledige code te plaatsen hoopte ik dat iemand mij kon vertellen wat ik precies moet doen om de statistieken per log te kunnen bekijken.

Weet iemand het? Misschien dat een los kant en klaar script ergens te krijgen is dat is simpel kan integreren door bijv. een stukje code toe te voegen.
 



Overzicht Reageren

 
 

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.