Your bug is that you are setting $md5 on every single line of input. So when you hit an error line, you no longer know the md5 from the line before.
To fix it you need to define $md5 outside of the while loop that reads through the file, and then inside the file you need to set it only if the record matched. That way it will get set when you encounter that line, and it will still be set on the error line.
(Incidentally you left two closing braces off of your cut and paste of your script.)
Edit: JavaFan is correct. I'd missed paragraph mode which does fix that potential problem. The cause of the undef warnings is that $UID is not populated, because the UID line is on the second paragraph, not the first. If you add another <$input_fh>; that warning goes away. (This is very, very fragile logic. But it seems to work.)
If there is still no output, then I would advise checking whether it is looking for the files in the right place.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.