Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: HTML Decoding

by Juerd (Abbot)
on Mar 17, 2002 at 12:17 UTC ( [id://152313]=note: print w/replies, xml ) Need Help??


in reply to HTML Decoding

$val =~ s|\n|\\n|g;
$val =~ s|"|\\"|g;

No! Please do not escape your data until you need it escaped. Not always do you need those annoying backslashes there. PHP has this evil sort of auto-escapes for SQL queries mainly, but with Perl you can use DBI's excellent placeholders. Where you need it escaped, you can use quotemeta, or its interpolation shortcut \Q: "foo \Q$bar\E baz".

foreach $var (sort(keys(%CONFIG)))

Why sort? You're not using the new order!

my($var,$val) = split(/=/, $qs2[$i]);
$HTTP::QueryString::GLOENV{$var} = $val;

That overwrites earlier set variables. This is described in great detail in Ovid's CGI course. Basically, foo=bar&foo=bar&foo=bar is a valid query string, that sets foo to three values: bar, bar and bar. You'll use this with multiple equally named checkboxes, <select multiple> and probably more.

for( my $i=0; $i<=$#qs2; $i++ )

Do use Perl's for (ARRAY), because it's faster and easier: for (@qs2) {

And use strict!

U28geW91IGNhbiBhbGwgcm90MTMgY
W5kIHBhY2soKS4gQnV0IGRvIHlvdS
ByZWNvZ25pc2UgQmFzZTY0IHdoZW4
geW91IHNlZSBpdD8gIC0tIEp1ZXJk

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://152313]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (5)
As of 2024-04-19 15:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found