Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re^2: Here document construct problem

by hok_si_la (Curate)
on Feb 17, 2005 at 21:13 UTC ( #432095=note: print w/replies, xml ) Need Help??

in reply to Re: Here document construct problem
in thread Here document construct problem


Using strict doesn't cause the warnings. Usings warnings does. If I comment out "use warnings;" I have no prob. The line that the warning is referring to is the middle END_OF_PRINT from the block of code that I posted. This block is encased by "&*&*&*&*&*&*&" in my scratchpad. I will comment the line itself.


Replies are listed 'Best First'.
Re^3: Here document construct problem
by thedoe (Monk) on Feb 17, 2005 at 21:33 UTC

    I apologize for my previous mixup of use strict and use warnings.

    As for where the warnings are coming from, they are being generated by variables within the here document starting at line 349. Any variables inside which have not been previously assigned will give you this warning and report line 349. This includes any keys in the data hash which have not been previously assigned, even if the data hash has been created.

    A good way to debug it would be using Data::Dumper as previously suggested for the data hash and manually inspecting any other variables used within that here document.

      First, I want to thank everyone who helped me with this via this node or the CB.

      Bart/blokhead pointed out that the commented subroutine calls in my example weren't infact commented as I thought they were. This allowed me to see that the issue was with an ODBC session I was having within the subroutine (printOwners) itself. I instead decided to use DBI and everything seems to be working great.

      Take care!

      I think you are on to something. This would agree with what kutsu advised earlier. I will let you know what the dumper does.

Re^3: Here document construct problem
by renz (Scribe) on Feb 17, 2005 at 21:29 UTC

    What happens if:

    END_OF_PRINT #&printOwner($data{owner1}); #&printOwner($data{owner2}); #&printOwner($data{owner3}); print <<END_OF_PRINT; </TH> </TR> END_OF_PRINT

    is changed to:

    #END_OF_PRINT #&printOwner($data{owner1}); #&printOwner($data{owner2}); #&printOwner($data{owner3}); #print <<END_OF_PRINT; </TH> </TR>
    and picked up by the END_OF_PRINT that occurs after <html> ?

    Update: Ok. Just checking for any weirdness in slight deviations from what you posted above. Ignore my comments below this reply, for they were added in error.

    "This is the Mark-man, safe and sure,
    Who still is right, and prayes to be so still."
    --George Herbert, Constancie.


      Well if you did intend do comment out both the END_OF_PRINT, and the print <<END_OF_PRINT; on the second block, then the script will execute without warnings. Anytime those two here document contructs are commented out I have no issues. Otherwise, I will get the warnings.

      see ya in the CB,
      hok_si_la -->also listening to Cohen now.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (3)
As of 2023-05-28 02:59 GMT
Find Nodes?
    Voting Booth?

    No recent polls found