/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
hvor kommer env-variabler
Fra : CykelSmeden fra Aalb~


Dato : 06-06-01 16:36

Jeg har følgende linie i en counter:
------
$countfile = $ENV{'DOCUMENT_ROOT'}.$ENV{'DOCUMENT_URI'}.".cnt";
------

counteren kører med perl -i counter.pl
men outputfilen hedder kun .cnt
hvordan 'dresserer' man scriptet til at kende $ENV{'DOCUMENT_ROOT'} hhv.
$ENV{'DOCUMENT_URI'}

det skal køre fra forskellige sider i forskellige biblioteker, og der lægge
resp. tællere

finn-helt-på-bar-...



 
 
Thorbjørn Ravn Ander~ (07-06-2001)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 07-06-01 11:32



CykelSmeden fra Aalborg wrote:
>
> Jeg har følgende linie i en counter:
> ------
> $countfile = $ENV{'DOCUMENT_ROOT'}.$ENV{'DOCUMENT_URI'}.".cnt";
> ------
>
> counteren kører med perl -i counter.pl
> men outputfilen hedder kun .cnt
> hvordan 'dresserer' man scriptet til at kende $ENV{'DOCUMENT_ROOT'} hhv.
> $ENV{'DOCUMENT_URI'}

Hvordan ser resten af linierne ud, og i hvilken sammenhæng kører du dem?

--
Thorbjørn Ravn Andersen "...plus...Tubular Bells!"
http://bigfoot.com/~thunderbear

Davíð Helgason (08-06-2001)
Kommentar
Fra : Davíð Helgason


Dato : 08-06-01 01:20

CykelSmeden fra Aalborg <skrald@acnord.SLET.dk> skrev

> Jeg har følgende linie i en counter:
> ------
> $countfile = $ENV{'DOCUMENT_ROOT'}.$ENV{'DOCUMENT_URI'}.".cnt";
> ------
>
> counteren kører med perl -i counter.pl
> men outputfilen hedder kun .cnt
> hvordan 'dresserer' man scriptet til at kende $ENV{'DOCUMENT_ROOT'} hhv.
> $ENV{'DOCUMENT_URI'}


Idéen er fin, men problemet er at %ENV hashet kommer fra udenfor perl. Der
er ikke umiddelbart noget galt med din perlkode (muligvis i resten af
scriptet, men det er udenfor sangen). Det er din shell eller din webserver
der sætter DOCUMENT_ROOT og DOCUMENT_URI. Eller måske netop ikke i dit
tilfælde.

Så spørgsmålet er hvilken webserver du bruger.... (som jeg regner med det
er)?


Angående metoden til at lave en tæller, så er det ikke så optimalt med en
masse filer. Du skulle overveje at bruge et af DBM modulerne for at lave en
mini-database. Det er hurtigere, sikrere, næsten ligeså enkelt.


Håber det hjælper,


d.

ps. Du kan bruge noget følgende script for at finde ud af hvad der er i dit
%ENV hash....

#!/usr/bin/perl

while (my ($k, $v) = each %ENV) {
print "$k = $v<br>";
}




Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste