Weblog stats

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Front End Developer React Vue

Dit ga je doen Meewerken aan de implementaties en ontwikkeling van nieuwe functionaliteiten van de webapplicaties; Ontwikkelen met o.a. React en Vue en HTML/CSS, ook krijg je in verband met de samenwerking ook affiniteit met de backend Ruby on Rails; Ontwikkeling aan de front end voor de koppelingen tussen de diverse systemen; Ontwerpen van interfaces en een bijdrage leveren aan de gebruikerservaring; Zorgdragen voor hoge kwaliteit van code en jezelf (en anderen) blijven verbeteren; Als Senior Front End Developer begeleid je zelf ook FE-development projecten, hierin leid je de projecten en pak jij het initiatief op (bv integratieprojecten). Hier ga

Bekijk vacature »

Fullstack 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 »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Back end developer PHP, Laravel

Functie Jij komt te werken in ons webdevelopment team, wat bestaat uit 8 ervaren collega’s. Hiernaast hebben wij nog een team van 2 ontwikkelaars die aan native applicaties werken. Bij ons zijn er korte lijntjes en er hangt een gezellige informele werksfeer. Maar het belangrijkste is natuurlijk dat je aan geweldige applicaties zult gaan werken! Wij willen als organisatie niet te groot worden, we willen gewoon toffe dingen maken. Onze techstack bestaat momenteel uit: PHP, Laravel, Javascript, Typescript, Git, MySQL, Java, Kotlin, Xamarin. Samen met ons ga jij zorgen dat we puik werk leveren! Waarbij je bij elke fase in

Bekijk vacature »

.NET Developer

Functie omschrijving Ervaren .NET Developer gezocht! Wij zoeken een ervaren .NET developer die aan de slag gaat voor een softwarebedrijf in de regio Rhenen. In deze rol ben jij zowel zelfstandig als in teamverband verantwoordelijk voor het ontwikkelen en verbeteren van bestaande producten. Daarnaast houdt jij je bezig met de nieuwbouw van websites, webapplicaties en mobiele applicaties die zowel intern als extern gebruikt worden. Je werkt hierbij nauw samen met andere developer, productmanagers en product specialisten om mooie producten te creëren. Bedrijfsprofiel Waar kom je te werken? Je komt te werken voor snelgroeiende softwareleverancier en allround dienstverlener. Klanten van deze

Bekijk vacature »

Front end developer

Functie Binnen de functie van Front-end developer werk je mee aan uitdagende klantprojecten. In teamverband werk je aan de voorkant van onze state-of-the-art portaal oplossingen en apps. Dit alles gebeurt in een multidisciplinaire omgeving waarbij je de ruimte hebt om te sparren, je ideeën scherp te stellen, en waar je met de benodigde kennis en ervaring om je heen altijd terecht kunt bij je collega’s voor vragen en ondersteuning. Meestal werk je vanuit ons kantoor maar we bieden ook alle faciliteiten om thuis te kunnen werken. Voor sommige projecten ga je mee naar de klant, wellicht zelfs in het buitenland!

Bekijk vacature »

.NET developer

Functie Jouw team van vier collega .NET developers is verantwoordelijk voor het bouwen van de ETL processen van jouw nieuwe werkgever. Op dit moment wordt de front-end gedaan door een extern team van professionals. Echter wilt jouw nieuwe werkgever graag intern deze kennis uitbreiden en heeft dan ook de ambitie om dit voor het eind van het jaar intern te gaan aanpakken. Dit betekend dat jij als .NET ontwikkelaar de ideale kans krijgt om jezelf samen met jouw collega’s te ontwikkelen als full stack developer. Als .NET ontwikkelaar werk jij bij deze gave werkgever met C# .NET, SQL, JavaScript, REST

Bekijk vacature »

Medior Java developer

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 »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Python Developer

Dit ga je doen Als Python Developer ben je verantwoordelijk voor: Het ontwikkelen van Stuurprogramma's in Python zodat er verbindingen kunnen worden gelegd tussen besturingssystemen en (AV) hardware; Het testen en debuggen van Stuurprorgamma's; Het communiceren met noodzakelijke partijen in gevallen waar extra technische details nodig zijn om een Stuurprogramma te ontwikkelen of problemen op te lossen; Het maken van de nodige technische documentatie (in het Engels); Het participeren in een Scrum/Agile omgeving. Hier ga je werken Deze internationale organisatie is wereldwijd een succesvol producent en leverancier van professionele AV hard- en software. Klanten gebruiken de producten o.a. voor het

Bekijk vacature »

Database ontwikkelaar

Functieomschrijving Wil jij aan gave logistieke softwareprojecten werken en bij een uniek softwarebedrijf in de regio van Tilburg? Wacht niet langer en reageer snel op deze vacature. Als Database ontwikkelaar ga je aan de slag het schrijven van stored procedures en verder uitbouwen van de SQL database. Je werkt in een database team, met allemaal mensen die energie krijgen van software en techniek. Verder krijg je als taak: Optimaliseren en uitbouwen van de MS SQL databases die gebruikt worden; Optimaliseren van query's, waardoor er efficiënter gewerkt kan worden; Je werkt met de technieken T-SQL of PL/SQL; Bij interesse kan je

Bekijk vacature »

.NET Developer

Functieomschrijving Ben jij klaar voor de volgende stap in jouw carrière? Kom werken bij dit kleine softwarebureau en werk aan de gaafste maatwerk projecten. Je komt te werken in een klein development team en werk nauw samen met elkaar, om maatwerk software te leveren en bij te dragen aan bedrijfsautomatiseringen. Je gaat werken met de Microsoft stack en technieken als .NET, C#, Entity, MVC, SQL server. In de functie krijg je veel vrijheid om zelf beslissingen te nemen en je hebt impact op de bedrijfsprocessen. Bedrijfsprofiel Dit familiebedrijf bestaat al ruim 20 jaar. Zij hebben een vast netwerk van klanten,

Bekijk vacature »

3D BIM Add-on Developer

As a 3D BIM add- on developer at KUBUS, you will develop add-ons (called BCF- Managers) to the leading building information modeling (BIM) programs Revit, Navisworks, Archicad, AutoCAD and Tekla Structures. BCF Managers enable data transfer between BIM software and BIMcollab. You will work on both the front- and the back-end. 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 in the market, but small enough that as an individual

Bekijk vacature »

Medior PHP developer

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

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

07/05/2024 09:54:06
 
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.