/ 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
Fejl ved brug af mod_perl og "udlicitering~
Fra : Thomas Skyt


Dato : 20-07-02 15:15

Hej,

jeg er bare ved at gå ud af mit gode skind over det her.

Bortset fra at Apache lader til at cache mine perl-moduler, når den har
kompileret dem og derfor af og til kommer med 5 minutter gamle fejl ...

Jeg får pt. denne fejlmelding og fatter bare ikke en dyt af hvad den skal
stå for:

[Sat Jul 20 16:11:07 2002] [error] Undefined subroutine
&Apache::ROOTsofagang_2edk::cgi_2dperl::showtopics_2epl::domysql
called at /home/sofagang/perl/showtopics.pl line 27.

(alt på een linie)

Jeg har lavet en lille fil, der køres via "require '../mitmodul.pl'",
hvori jeg har lagt alle de funktioner, jeg regelmæssigt bruger, bl.a.
database-fiduserne.

Jeg har prøvet at kalde funktionerne i den fil med

&funktion(parametre)
   og
funktion(parametre)

men ligelidt hjælper det - bortset fra at jeg får forskellige
fejlmeldinger.

Hvad kan der være galt?

/Thomas Skyt

 
 
Thomas Skyt (20-07-2002)
Kommentar
Fra : Thomas Skyt


Dato : 20-07-02 15:55

On Sat, 20 Jul 2002 16:14:32 +0200, Thomas Skyt wrote:

> [Sat Jul 20 16:11:07 2002] [error] Undefined subroutine
> &Apache::ROOTsofagang_2edk::cgi_2dperl::showtopics_2epl::domysql called
> at /home/sofagang/perl/showtopics.pl line 27.

Det har jeg løst - modulet skulle blot laves om til en package, men der
er det næste problem:

Nu får jeg fejlen

[Sat Jul 20 16:50:10 2002] [error] Undefined subroutine &nifty::showtemplate called at /home/sofagang/perl/usermenu.pl line
68.

Selvom den fint er defineret:

sub showtemplate {
   my($linie);
   my $file = $templateprefix.$_[0];
   open(INCFILE, $file);
   
   while(<INCFILE>) {
      $linie = $_; chomp($linie);
      print "$linie\n";
   }

   close(INCFILE);
   return;
}

Har det nogen betydning af package navnet ikke starter med et stort
bogstav?

/Thomas Skyt

Thomas Skyt (20-07-2002)
Kommentar
Fra : Thomas Skyt


Dato : 20-07-02 16:04

On Sat, 20 Jul 2002 16:55:04 +0200, Thomas Skyt wrote:

> On Sat, 20 Jul 2002 16:14:32 +0200, Thomas Skyt wrote:
>
>> [Sat Jul 20 16:11:07 2002] [error] Undefined subroutine
>> &Apache::ROOTsofagang_2edk::cgi_2dperl::showtopics_2epl::domysql called
>> at /home/sofagang/perl/showtopics.pl line 27.
>
> Det har jeg løst - modulet skulle blot laves om til en package, men der
> er det næste problem:
>
> Nu får jeg fejlen
>
> [Sat Jul 20 16:50:10 2002] [error] Undefined subroutine
> &nifty::showtemplate called at /home/sofagang/perl/usermenu.pl line 68.
>
> [...]
>
> Har det nogen betydning af package navnet ikke starter med et stort
> bogstav?

Hvilket det havde ...

Mit næste problem er at jeg ikke lader til at få noget tilbage fra mine
funktioner - jvf. denn fejlmelding:

Use of uninitialized value in length at /home/sofagang/perl/showtopics.pl line 35.
Use of uninitialized value in numeric eq (==) at /home/sofagang/perl/showtopics.pl line 40.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showtopics.pl line 42.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showtopics.pl line 42.
Use of uninitialized value in length at /home/sofagang/perl/showtopics.pl line 35.
Use of uninitialized value in numeric eq (==) at /home/sofagang/perl/showtopics.pl line 40.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showtopics.pl line 42.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showtopics.pl line 42.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.
Use of uninitialized value in concatenation (.) or string at /home/sofagang/perl/showgroups.pl line 20.


Udover at mine functions blive "redefined" ?? ...

Håber I kan hjælpe eller at jeg selv finder løsningen (som sidst .

/Thomas Skyt

Thorbjoern Ravn Ande~ (20-07-2002)
Kommentar
Fra : Thorbjoern Ravn Ande~


Dato : 20-07-02 23:54

Thomas Skyt <thomas@sofagang.dk> writes:

> [Sat Jul 20 16:50:10 2002] [error] Undefined subroutine &nifty::showtemplate called at /home/sofagang/perl/usermenu.pl line
> 68.
>
> Selvom den fint er defineret:

Er den pågældende fil hevet ind på det pågældende tidspunkt, og er
definitionen placeret i den korrekte pakke?

--
Thorbjørn Ravn Andersen
http://homepage.mac.com/ravn

Thorbjoern Ravn Ande~ (20-07-2002)
Kommentar
Fra : Thorbjoern Ravn Ande~


Dato : 20-07-02 23:52

Thomas Skyt <thomas@sofagang.dk> writes:

> Jeg har lavet en lille fil, der køres via "require '../mitmodul.pl'",
> hvori jeg har lagt alle de funktioner, jeg regelmæssigt bruger, bl.a.
> database-fiduserne.

Brug ikke require, men lav et modul. Cachemekanismen kan - så vidt
jeg ved - ikke lure ændringer i require'd filer.
--
Thorbjørn Ravn Andersen
http://homepage.mac.com/ravn

Thomas Skyt (21-07-2002)
Kommentar
Fra : Thomas Skyt


Dato : 21-07-02 01:46

On Sun, 21 Jul 2002 00:52:27 +0200, Thorbjoern Ravn Andersen wrote:

> Thomas Skyt <thomas@sofagang.dk> writes:
>
>> Jeg har lavet en lille fil, der køres via "require '../mitmodul.pl'",
>> hvori jeg har lagt alle de funktioner, jeg regelmæssigt bruger, bl.a.
>> database-fiduserne.
>
> Brug ikke require, men lav et modul. Cachemekanismen kan - så vidt jeg
> ved - ikke lure ændringer i require'd filer.

I mellemtiden har jeg lavet det som modul og integreret dem ved hjælp af
"use" - det kører meget fint.

/Thomas

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

Månedens bedste
Årets bedste
Sidste års bedste