in reply to text encoding

You need to use URL encoding. You can use one of the URI modules or if you want to roll your own these are the algorithms. Essentially you encode as %HH where HH is the 2 char hex representation of the char code. Spaces can be encoded as %20 or +. To display 'odd' characters correctly in a browser you may need to encode them using HTML::Entities.

sub url_decode { my ( $decode ) = @_; return '' unless defined $decode; $decode =~ tr/+/ /; $decode =~ s/%([a-fA-F0-9]{2})/ pack "C", hex $1 /eg; return $decode; } # RFC 1738 # Only alphanumerics [0-9a-zA-Z], the special characters $-_.+!*'(), # and reserved characters used for their reserved purposes # may be used unencoded within a URL. we encode more because of issues # that some browsers have with the RFC sub url_encode { my ( $encode ) = @_; return '' unless defined $encode; $encode =~ s/([^a-zA-Z0-9_. -])/ uc sprintf "%%%02x",ord $1 /eg; $encode =~ tr/ /+/; return $encode; }

cheers

tachyon