in reply to grepping arrays

Your problem is that you misunderstand the way perlfunc:grep works.

As a hint, this line

if(grep($username, @ignore) || grep($askname, @ignore)) {

Should probably look something like this

if(grep( /$username/, @ignore) || grep( /$askname/, @ignore)) {

Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller