Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: Question regarding perl subroutine

by davies (Vicar)
on Jul 15, 2012 at 20:38 UTC ( #981924=note: print w/ replies, xml ) Need Help??


in reply to Question regarding perl subroutine

Have a look at the line my $log = "". There's no trailing semicolon. The current poll (My most common answer to a question about Perl is:) is relevant.

Regards,

John Davies


Comment on Re: Question regarding perl subroutine
Download Code
Replies are listed 'Best First'.
Re^2: Question regarding perl subroutine
by sureshsmr (Initiate) on Jul 15, 2012 at 21:07 UTC

    Hi John Davies, Thanks a lot! That was good catch. Now I am getting a different error as below:

    /usr/local/bin/perl PtfSapGetSyncStg.pl Can't call method "agent" on an undefined value at PtfSapGetSyncStg.pl + line 158.

    Here is the code on line 158:

    my $ua->agent("Mozilla/5.0"); #my $ua->agent("");

    is the syntax for calling "agent" method ok? I am not sure what tool is on our unix server. Any suggestions ? Thanks Suresh

      $ua is not what you think. It is undefined, probably because the code above lacks error checks. See Basic debugging checklist.

      Alexander

      --
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)

      No, that syntax cannot be right. Looking at the code you posted originally, I see:

      my $ua= new LWP::UserAgent; #my $ua->agent("Mozilla/5.0"); my $ua->agent("");

      You seem to be trying to use strict;, which is good (see my home node), but without understanding what it does. PerlIntro (http://perldoc.perl.org/perlintro.html#Variable-scoping) has a section on variable scoping that it might help you to understand. my creates a new instance of a variable. You may have seen examples of messages telling you that a declaration masks a previous declaration. This is telling you that you have re-initialised a variable name, which is unlikely to be what you want. I think what you want is something like:

      my $ua= new LWP::UserAgent; $ua->agent("Mozilla/5.0");

      but as I don't even know what LWP is, this is a pretty wild guess. http://search.cpan.org/~gaas/libwww-perl-6.04/lib/LWP/UserAgent.pm might be another good read.

      Regards,

      John Davies

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://981924]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (20)
As of 2015-07-07 21:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (93 votes), past polls