I lang tid har samarbejdsbranchen fokuseret på at forbedre enhedsfunktioner – bedre kameraer, klarere lyd og smartere software. Men den virkelige forvandling handler ikke om funktioner.
// lav et array med filen counter.txt i. $fil = file("counter.txt");
// Tæl hvor mange linjer der er i filen $tael = count($fil);
// Kører filen igennem og tjekker om brugerens ip allerede er der. Hvis den er det så lav variablen $erder for($i=0; $i<$tael; $i++){ if(eregi($fil[$i],$ip)){$erder = 'true';} }
// Hvis variablen $erder = True så skriv kun tallet ud, ellers læg en til tallet og gem brugerens ip i filen counter.txt if($erder == 'true') { print $tael; } else { $tael++; print $tael; $gem = fopen("counter.txt", "a+"); fwrite($gem, $ip); fclose($gem); } ?>
og derefter kan du prøve at kalde på filen sådan her: include("includes/counter.php");
Uden at tage stilling til mbm2007s svar, tror du misforstår betydningen af "require_once". Require_once sørger for, at et script er hentet ind, uden at det bliver hentet ind flere gange. Men det er pr. udførelse af det kaldte script. Så derfor bliver counter.php hentet ind hver gang en side besøges eller reloades.
Du kan i stedet kigge på brugen af sessions i php; den kan gemme informationer på tværs af side-kald:
// Fil start (i samtlige sider): session_start(); if (!$_SESSION['counted']) { require('counter.php'); $_SESSION['counted'] = True; }
Mit script sørger for at selvom brugeren lukker browseren (Som foresager slettelse af Sessioner), og åbner siden igen i en ny browser men på samme ip-adresse, så bliver han/hun ikke talt med igen, det gør han da så vidt jeg kan se i dit eksempel? Korriger mig hvis jeg tager fejl?
mbm2007: Jeg indrømmer, jeg gad ikke lige sætte mig ind i dit script. Men vores respektive løsninger belyser problematikken vedr. besøgstællere: Hvornår er et besøg unikt? Din besøgstæller vil ikke blive opdateret, hvis det er flere forskellige personer der sidder bag samme ip-adresse (f.eks. på samme netværk med en enkelt internetforbindelse), ejheller hvis gæsten kommer tilbage dagen efter. Min vil derimod tælle en besøgende med, hver gang browseren starter en ny session. Så du tager ikke fejl i dit script, det er bare forskellige løsningsmodeller. :)
Det var lige hvad jeg skulle bruge. Nu tæller den kun en gang, når man besøger siden. Lukker man browseren, tæller den en gang til, som jeg gerne vil have det, da det (i mine øjne) tæller som et nyt besøg.
Til mbm2007. Tak for dit script,det minder om det jeg har i forvejen, mit skriver bare til SQL i stedet for en txt fil.
Mange tak SkinnyPete
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.