in reply to Unable to pass 0 number through form with CGI DBI backend

As marto pointed out, the character class of your data laundering substitution is not what you think it to be.

perl -le 'print $%' 0

See perlvar. Escape the $ in your character class with a backslash.

perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'