Just nu i M3-nätverket
Gå till innehåll

En besöksräknare - kanske att räkna med...


Kalle Dator1

Rekommendera Poster

Hejsan !

 

Jag var ute på internet och jagade en enkel besöksräknare, som inte var beroende av någon kommersiell site eller kopplad till något varumärke.

 

Det visade sig svårt att hitta någon sådan, så jag tänkte att jag försöker att snickra ihop något själv. Det blev denna, som är en blandning av PHP-script och html-kod:

 

<?
$file = fopen("Count.txt","r");
$contents = fgets($file)+1;
fclose($file);
$file=fopen("Count.txt","w");
fwrite($file,$contents);
fclose($file);
?>

<html>
<head>

<h1 align="center"><strong>Välkommen till NN:s Hemsida </strong></h1>
</head>
<body bgcolor=#408080>

Bilder och programkod..................



<p align="center"><font size="5">
Du är besökare nr: 
<?
echo  $contents;
?>
<br><br>
<font color=#FFFF00><strong><b> Tack för att du tittar in !</b></font> </p>



</body>
</html>

 

 

Jag vill gärna veta av någon, som är mer bevandrad i webbdesign och hemsidesbyggande, hur pass funktionsduglig och pålitlig denna räknare är. Om inte så vill jag gärna veta vilka brister den är behäftad med.

 

Den fungerar naturligtvis bara vid anrop till filen liggande på en webbserver, som är PHP-bestyckad, men det är väl de flesta antar jag. Och webbsidan med räknaren måste också heta "nnn.php" i stället för "nnn.htm".

Textfilen "Count.txt" måste skapas i samma katalog som php-filen innan första anrop till sidan, och bör förslagsvis förses med siffran "0".... Lätt att sedan nollställa vid sådant behov !

Räknaren har givetvis ingen spärr för uppräkning genom siduppdatering ! Detta kan dock byggas ut med t ex igenkänning av pågående ip-nummer el dyl.

 

Mvh

 

/Kalle

Länk till kommentar
Dela på andra webbplatser

Installera en wamp-server på din burk och testa. I övrigt skulle jag nog ha använt file_get_contents och file_put_contents eftersom det blir lite mindre kod.

 

Lycka till!!!

Länk till kommentar
Dela på andra webbplatser

  • 3 veckor senare...

Faktum är att jag använder php-scriptet med framgång i en webbsida, men bara på min egen server.

 

När jag applicerade scriptet till liknande webbsida på ett webbhotell (Loopia) fungerade det inte alls.

Där läses uppenbarligen inte textfilen, inte heller uppdateras den. Under inga omständigheter skrivs någonting ut på webbsidan !

 

Jag har försökt med både "file_get_contents" och "fgets" men ingenting ser ut att hjälpa...

 

Vad skulle skillnaden kunna bestå i och hur bemästrar jag detta ? Inte kan väl Loopia sakna php ? !

 

Med vänlig hälsning

 

/Kalle

Länk till kommentar
Dela på andra webbplatser

Tack Cluster för svaret !

 

Nej - jag får inget felmeddelande !

 

Men jag har gjort precis det som du föreslår, d v s en testsida med ungefär din kod, givetvis inom - även innan - <html> </html> och inom och utanför <body> </body>... Dock med samma klena och intetsägande resultat...

 

Webbsidan ifråga heter index.php, för att den ska vara den startande när huvudkatalogen anropas. Möjligen kan den snabblänkas till annan sida, om nu detta skulle hjälpa, vilket jag inte har kollat ännu...

 

Men rättighetsproblem ???

Måste man ha speciella rättigheter för att få skriva php-script på en webbsida ? Har aldrig hört talas om det...

Tillkommer så att det fungerar bra på min egen server

 

Vad jag ännu inte har gjort är att skriva ett mail till Loopia och fråga om man inte får/kan ha php.... Men det blir nästa nummer när jag har uttömt andra eventuella felorsaker !

 

/Kalle

Länk till kommentar
Dela på andra webbplatser

Jag fick ett svar från Loopia, att min php-fil hade en felaktig teckentabell, och således inte kunde läsas av servern. (Visste inte att php-filen hade en tabell överhuvud taget !!!)

Efter att supporten sagt sig ha konverterat filen till UTF-8, lär koden ha fungerat. Men "file_get_contents" skulle ej gå att använda på Loopia....

 

OK - jag sparade om min fil med teckentabellen UTF-8 och provkörde den igen, men inte sjutton fungerade den... Satte t o m in metataggen <META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\"> mellan <head> och </head>

 

 

Detta går nog en bra bit över mitt gamla programmerar-huvud, misstänker jag...

 

Förslag - någon...

 

/Kalle

Länk till kommentar
Dela på andra webbplatser

Observera att själva filen måste även sparas som UTF-8 (t.ex. i Notepad, se bild).

post-3164-0-63983500-1297946250_thumb.png

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>327124</title>
</head>

<body>
  <?php
     echo "Hello World";
  ?>
</body>
</html>
Länk till kommentar
Dela på andra webbplatser

Absolut !

 

Jag höll på att labba med en testfil, som jag - helt rätt - sparade i format UTF-8. Men den filen betydde inga framsteg.

Däremot, när jag sparade själva "index.php" i sagda format, började plötsligt min besöksräknare att vakna och leverera siffror - vad skillnad nu detta skulle betyda. Dessutom kunde jag använda den tidigare koden (se mitt första inlägg), som nu fungerade utmärkt !

 

Tack för hjälp och uppmärksamhet !

Länk till kommentar
Dela på andra webbplatser

Så bra då!

 

Det gäller att jobba med UTF-8 i alla led.

Alltid skapa/spara alla filer i UTF-8, ange rätt Content-Type/codepage etc etc.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...