webForumDet fria alternativet

Skriva till textfil med CGI

3 svar · 192 visningar · startad av Webbmonstret

WebbmonstretMedlem sedan nov. 200060 inlägg
#1

Jag har modifierat en CGI-gästbok som fungerar utmärkt. Innehållet i gästboken läggs i en logg-fil. Nya inlägg hamnar först i filen.
Nu skulle jag vilja göra en modifikation till den nuvarande gästboken fast texten skall fogas in efter befintlig text i logg-filen.
Raderna i scriptet där texten fogas in ser ut så här:

open(GUESTLOG, ">$guest_log");
flock(GUESTLOG, 2);

print GUESTLOG "Hello World!";
...

Mellan <b>flock</b> och <b>print</b> skulle jag alltså vilja ha något som hoppar till slutet av filen!

Hjälp!

------------------
-Webbmonstret

Gislaved.netMedlem sedan juni 20001 521 inlägg
#2

Det räcker väl att öppna filen i append-läge?

open(GUESTLOG, ">>$guest_log");

Då hamnar allt nytt sist i filen.

------------------
Gislaved.net
"Det är inte lätt när det är svårt."

[Redigerat av Gislaved.net den 20 dec 2000]

WebbmonstretMedlem sedan nov. 200060 inlägg
#3

Nja, det funkar sådär. Jag kanske har gjort fel jag är ju inte bäst på CGI direkt!

Felet är att den nu fyller på text efter de gamla. Bra! Men den klistrar även in den gamla efter. Första meddelandet som skrivs blir:
1. Första meddelandet.

Efter andra meddelandet står det:
1. Första meddelandet.
2. Andra meddelandet.
1. Första meddelandet.

Efter tredje meddelandet står det:
1. Första meddelandet.
2. Andra meddelandet.
1. Första meddelandet.
3. Tredje meddelandet.
1. Första meddelandet.
2. Andra meddelandet.
1. Första meddelandet.

*skriker*gaah och hjälp

------------------
-Webbmonstret

WebbmonstretMedlem sedan nov. 200060 inlägg
#4

Flåt!
Hittade en:

print GUESTLOG @FILE; 

lite längre ner i skriptet!

Nu funkar det! Men tack iaf!

*skrettar, dansar och ler*

------------------
-Webbmonstret

138 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)