Ok I'm confused by something here...
&Search_Buff($decide == "1")
You are using a conditional statement as an argument to the &SearchBuff subroutine. But it appears that $decide which you are testing in the conditional is defined in &Search_Buff. This will not work because the conditional is being evaluated before the subroutine is executed. It looks like you want &Search_Buff to return a boolean value, and then test that. try something like this:
if (&Search_Buff()){ &Site_Up; } else { &Site_Down; } # Sub to search gethttpbuff.txt for a string & return 0 or 1 sub Search_Buff { # Open hethttpbuff.txt file, create an array with the data & close +file. End if file is locked. open (gethttpbuff, "gethttpbuff.txt") || die("Could not open file!" +); @array = <gethttpbuff>; close(gethttpbuff) # If search string is found make var equal to "1". If the search st +ring is not found make var equal to "0" foreach $line (@array) { if ($line =~ /$search/) { return 1; } } return undef; # or return 0; }
Update: Found a logicall flaw in my code. Correcting it.
In reply to Re: Problem Searching an array for a string... Please Help!
by JediWizard
in thread Problem Searching an array for a string... Please Help!
by XehNib
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |