Weblog stats

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Senior Lead Front End Developer

Functieomschrijving Voor Stichting Waternet zijn wij op zoek naar een senior Lead Front End Developer. Binnen het DevOps team Online zijn we op zoek naar een Senior Lead Front End developer met kennis van toegankelijkheid. Deze developer zal zich bezighouden met development van webpaginas die in verbinding staan met systemen uit het back office. Taken Ontwerpen, ontwikkelen, implementeren, documenteren en beheren van webapplicaties in een Azure-omgeving Debuggen, analyseren en oplossen van problemen in de OTAPomgevingen Je participeert in het DevOpsTeam Online voor het verder uitwerken en implementeren van gebruikerswensen Je bent betrokken bij toegankelijkheid audits en het implementeren van WCAG

Bekijk vacature »

Back End Developer

As a Back End developer at KUBUS you will be developing the (web) application and services of BIMcollab. You have a focus on the back end of our software, for which we mainly work with C# and .NET. We use a full-stack approach, which means that in addition to the back-end, you will also help with other parts of the code. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact

Bekijk vacature »

Back-end Developer

Functieomschrijving Voor een erkende werkgever in de regio van Middelburg zijn wij op zoek naar een enthousiaste PHP / Symfony Developer. Een ambitieus persoon die het gemotiveerde development team komt versterken met het realiseren van nieuwe en complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor professionele groei? Dit ga je doen: Je bent verantwoordelijk voor de beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

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 »

Back end developer

Functie Jij als full stack ontwikkelaar komt te werken in een team bestaande uit 4 back end programmeurs, 2 vormgevers/ Front end developers en een online marketeer. Qua persoonlijkheden is het team erg gevarieerd van sportfanaten tot gameliefhebbers en Golfers. Een ding heeft iedereen hier gemeen; Passie voor goede code. In jouw rol zul je voor 90% van je tijd je bezig houden met het ontwikkelen van grote maatwerk applicaties. Daarnaast hebben wij op aanvraag ook wel eens een website of onderhoudsklusje, die opgepakt moet worden en hier ben jij ook niet vies van. De technische uitdaging momenteel is dat

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

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 »

Full stack developer Node.js, React Remote

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

Bekijk vacature »

Social Media Specialist

Social Media Specialist locatie: Rotterdam (Zuid Holland) Wij zoeken op korte termijn een nieuwe collega, een social media specialist/ adviseur sociale media (24 uur), voor ons sprankelende team Communicatie van CJG Rijnmond. Onze focus ligt op het informeren en binden van onze in- en externe klanten en stakeholders en het versterken van onze naamsbekendheid en zichtbaarheid. Dat doen we in nauwe samenwerking met elkaar. Over de functie Ons team bestaat uit 7 communicatieprofessionals met ieder een eigen expertise. Als lid van het online team ben je verantwoordelijk voor het ontwikkelen, uitvoeren en analyseren van onze socialemediastrategie. Ook stel je campagnes

Bekijk vacature »

Software Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

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 »

Java Developer

Dit ga je doen Als Java Developer ben je verantwoordelijk voor: Het ontwikkelen van nieuwe en bestaande webservices; Het uitbreiden van functionaliteiten binnen de producten- en dienstenportefeuille; Het werken aan gegevensuitwisseling met bijvoorbeeld SOAP; Testen van frameworks met gebruik van UNIT en Selenium. Hier ga je werken De organisatie waar je komt te werken is een semi-overheidsinstelling, gesitueerd in Utrecht en zorgt voor een goede samenwerking tussen verschillende overheidsinstanties. Het is een familiaire club die gaat voor kwaliteit en langdurige relaties. Zo zorgen zij ervoor dat er op grote schaal vertrouwelijke informatie tussen verschillende overheidsinstellingen wordt uitgewisseld. Hun werk zorgt

Bekijk vacature »

Ervaren PHP Developer

Functie omschrijving Jelling IT zoekt ervaren PHP developer! Voor een organisatie in de regio Rhenen zijn wij op zoek naar een ervaren PHP developer die gaat functioneren als een verlengstuk van de klant. Jij bent iemand die technisch complexe zaken met enthousiasme aanvliegt. Je bent in staat om aan meerdere projecten te werken en werkt graag met de nieuwste technieken. In deze functie werk je veel samen met front-end developers en stel je alles in het werk om grote verschillen voor de klanten teweeg te brengen. Verder ben jij iemand die graag zichzelf uitdaagt en die altijd de beste wilt

Bekijk vacature »

OutSystems Developer

Dit ga je doen Het van scratch af aan ontwikkelen van applicaties met OutSystems; Het aanhaken bij diverse projecten binnen de organisatie; Schakelen met de business; Meedenken over de mogelijkheden van het platform binnen de organisatie. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap, bestaande uit standaard- en maatwerkapplicaties. De maatwerkapplicaties worden ontwikkeld door een inhouse development team. Het doel voor de komende periode is het verder vernieuwen en optimaliseren van het huidige applicatielandschap. Zo staat de organisatie aan

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

22/11/2024 06:13:01
 
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.