Yes, but when i use encode_utf8() to convert already known value from string to octets before comparing with newly posted value I can't see any difference berween values.
my $par1 = $posted_value; # not marked as utf8 yet
my $par2 = $already_known_value; # marked as utf8
my $res = 0;
When params are converted to octets and then compared result is - equal.
# code1 - compare octets
$par1 = Encode::encode_utf8($par1) if Encode::is_utf8($par1);
$par2 = Encode::encode_utf8($par2) if Encode::is_utf8($par2);
$res = ($par1 eq $par2) ? 1 : 0;
# $res now contain 1 - $par1 and $par2 are equal
But when try convert to string and compare after, then result is - not equal because posted value is still not mared as utf8. I allready use the same form with the same data for posting.
# code2 - compare strings
$par1 = Encode::decode_utf8($par1) if !Encode::is_utf8($par1);
$par2 = Encode::decode_utf8($par2) if !Encode::is_utf8($par2);
$res = ($par1 eq $par2) ? 1 : 0;
# $res now contain 0 - $par1 and $par2 are not equal
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|