Avatar billede homemicky Nybegynder
13. januar 2004 - 16:19 Der er 16 kommentarer og
1 løsning

En simpel tæller i php

Jeg skal have lavet en tæller til min hjemmeside kaninburet.dk. Have ikke rigtig hel med den tideligere. Hvordan laver man sådan uden brug af mysql. Bare en total enkel tæller?
Avatar billede ckh Nybegynder
13. januar 2004 - 16:26 #1
Avatar billede nak-m Nybegynder
13. januar 2004 - 16:31 #2
Her er en enkel tæller (husk at lav filen "tael.txt") :

<?php
$fil = fopen("tael.txt", "r");
$antal = fgets($fil, 1024);
fclose($fil);
echo "Du er gæst nr." . $antal++;
$fil = fopen("tael.txt", "w");
fwrite($fil, $antal);
fclose($fil);
?>
Avatar billede homemicky Nybegynder
13. januar 2004 - 16:51 #3
Okay nu fandt jeg en tæller, men hvad mener mener han med nr.2 :


Installation:
1) copy 'counter.php' and 'counter.txt' somewhere in your file directory;
2) Set 666 permissions on counter.txt on Unix
or give user IUSR_Machine read/write rights if on Windows NT/2000/XP NTFS partition;
3) Enjoy!
Avatar billede ckh Nybegynder
13. januar 2004 - 17:04 #4
1) Kopier filerne op på din server der hvor de skal ligge i biblioteksstrukturen på dit site
2) Sæt CHMOD-rettighederne på filen counter.txt.
- Hvis du bruger et eller andet ftp-program til at uploade burde det kunne klare punkt 2 for dig hvis du højre-klikker på filen efter upload. Der sætter du så forskellige rettigheder for read/write/execute. Det resulterer i et 3-cifret tal som i dette tilfælde skal være 666.

Jeg ved godt det lyder knudret, men det er nødvendigt for at der kan skrives til filen på din server.
Avatar billede homemicky Nybegynder
13. januar 2004 - 17:30 #5
jeg afprøver nu
Avatar billede homemicky Nybegynder
13. januar 2004 - 17:39 #6
Nu skriver den det her på siden

Fatal error: Call to undefined function: file_get_contents() in /customers/kaninburet.dk/kaninburet.dk/httpd.www/Venstre.php on line 13
Avatar billede homemicky Nybegynder
13. januar 2004 - 17:43 #7
Min counter ser således ud:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Venstre</title>
<base target="_self">
</head>
<body bgcolor="#C0C0C0" background="wood_floor2.jpg">
</body>
</html><?php
// Our log file;
$counter = "counter.txt";

// Date logging;
$today = getdate();
$month = $today[month];
$mday = $today[mday];
$year = $today[year];
$current_date = $mday . $month . $year;

// Log visit;
$fp = fopen($counter, "a");
$line = $REMOTE_ADDR . "|" . $mday . $month . $year . "\n";
$size = strlen($line);
fputs($fp, $line, $size);
fclose($fp);

// Read log file into array;
$contents = file($counter);

// Total hits;
$total_hits = sizeof($contents);

// Total hosts;
$total_hosts = array();
for ($i=0;$i<sizeof($contents);$i++) {
    $entry = explode("|", $contents[$i]);
    array_push($total_hosts, $entry[0]);
}
$total_hosts_size = sizeof(array_unique($total_hosts));

// Daily hits;
$daily_hits = array();
for ($i=0;$i<sizeof($contents);$i++) {
    $entry = explode("|", $contents[$i]);
    if ($current_date == chop($entry[1])) {
        array_push($daily_hits, $entry[0]);
    }
}
$daily_hits_size = sizeof($daily_hits);

// Daily hosts;
$daily_hosts = array();
for ($i=0;$i<sizeof($contents);$i++) {
    $entry = explode("|", $contents[$i]);
    if ($current_date == chop($entry[1])) {
        array_push($daily_hosts, $entry[0]);
    }
}
$daily_hosts_size = sizeof(array_unique($daily_hosts));

// Let's display everything;
echo "Total hits: " . $total_hits . "<br>Total hosts: " . $total_hosts_size . "<br>Daily hits: " . $daily_hits_size . "<br>Daily hosts: " . $daily_hosts_size;
?>
Avatar billede ckh Nybegynder
13. januar 2004 - 18:00 #8
Begynd lige med at fjerne dette før php-scriptet og put det forneden i dokumentet:

</body>
</html>

Så det står til allersidst

Og så skal du være sikker på at stien til din .txt fil er korrekt (filen skal ligge i samme bibliotek som den fil du viser herover) og at den har den korrekte CHMOD.
Avatar billede homemicky Nybegynder
13. januar 2004 - 18:03 #9
chmod???
Avatar billede ckh Nybegynder
13. januar 2004 - 18:05 #10
Det jeg forsøgte at beskrive 17:04:57 herover
Avatar billede homemicky Nybegynder
13. januar 2004 - 18:07 #11
Den her kan jeg ikke helt dreje ,men </body>
</html> er kommet nederst på siden
Avatar billede homemicky Nybegynder
13. januar 2004 - 18:08 #12
Og så skal du være sikker på at stien til din .txt fil er korrekt (filen skal ligge i samme bibliotek som den fil du viser herover) og at den har den korrekte CHMOD.
Avatar billede homemicky Nybegynder
13. januar 2004 - 18:15 #13
Skal jeg skrive 666 et eller andet sted eller kommer det af sig selv. Jeg har givet fulde rettigheder til begge filer
Avatar billede ckh Nybegynder
13. januar 2004 - 18:18 #14
Prøv at læse lidt om CHMOD her (under attributter og rettigheder). Jeg er desværre nødt til at smutte et par timer.
http://www.netexplorer.dk/artikler/andre/art-03-chmod.shtml

Hvis forvirringen skal op på et højere plan har du et dansk søgeresultat på emnet her:
http://www.google.dk/search?hl=da&ie=UTF-8&oe=UTF-8&q=chmod&btnG=Google-s%C3%B8gning&meta=cr%3DcountryDK
Avatar billede homemicky Nybegynder
13. januar 2004 - 19:38 #15
Tusinde tak for jeres venlighed. Jeg fandt ud af det, men nu kan jeg ikke finde af at få et baggundsbillede ind i nu i php sprog.

Fejlen ved det tideligere var at den fil jeg downloaded skulle hedde counter.php den måtte f.eks ikke hedde venstre.php. :-(
Avatar billede ckh Nybegynder
13. januar 2004 - 22:10 #16
Du kan da include counter.php i venstre.php hvis du har behov for det :)

Sæt dette ind der hvor du vil have din tæller i venstre.php dokumentet:

<?php
include("counter.php");
?>
Avatar billede ckh Nybegynder
21. januar 2004 - 22:56 #17
Fik du løst dit problem eller hur? :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester