Hi! First of all, the code is a bit chaotic/messy IMO. I suggest that you work with a bit more whitespace and subroutines. Thats of course a matter of style, but a cleaner style often leads to easier discoverable bugs.
To the code: I've read through it mostly and one line was IMO fishy (see around line 109):
for (@array) { s/$inputline3/$encryptpw3/g; print ("\n\nYour Username and Password have been updated a +nd saved!\n\n"); }
$inputline3 contains the entered password and not the encrypted password. Is that maybe a mistake? Also note that if the username is the same as an encrypted password, it will also be replaced with the new password. I suggest to make the substitution more precise:
s/^([^:]):\Q$encryptpw2\E/$1:$encryptpw2/
The \Q...\E is just for the case that $encryptpw2 contains '.' or '\s+' or '[' or whatever character might have some other meaning in a regex.
In reply to Re: User management system; file input not working?
by elmex
in thread User management system; file input not working?
by jambocool
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |