Thread View: pl.comp.lang.perl
2 messages
2 total messages
Started by Mateusz Szczyrzyca
Wed, 15 Jun 2011 09:42
FastCGI i polskie znaki w POST
Author: Mateusz Szczyrzyca
Date: Wed, 15 Jun 2011 09:42
Date: Wed, 15 Jun 2011 09:42
33 lines
1825 bytes
1825 bytes
Witam,
Mam problem z polskimi znakami w aplikacji w FastCGI przesyłanymi
metodą POST.
Kod, który odpowiada za pobranie danych z POST:
#v+
# Tutaj różne takie już próbowałem
#binmode( STDIN, ":utf8" );
my $bytes = read( STDIN, $data, $req_len );
$post_data = $data;
$Config->debug("[$client_ip] \$POST: $post_data");
@pairs = split( /&/, $post_data );
foreach $pair ( @pairs )
{
( $post_name, $post_value ) = split( /\=/, $pair );
$POST{ $post_name } = $post_value;
$POST_CACHE{ $post_name } = $post_value;
}
#v-
Kombinuję z binmode w STDIN, oczywiście próbowałem bez, ale
niespecjalnie wychodzi, albo czegoś nie rozumiem.
Np słowo: żółw daje: %C5%BC%C3%B3%C5%82w
Oczywiście mogę to ,,ręcznie'' pozamieniać, jednakże wydaje mi
się, że nie jest to dobre rozwiązanie tego problemu.
Dzięki z góry,
Pozdrawiam.
Re: FastCGI i polskie znaki w POST
Author: Stachu 'Dozzie' K.
Date: Wed, 15 Jun 2011 10:18
Date: Wed, 15 Jun 2011 10:18
28 lines
2011 bytes
2011 bytes
On 2011-06-15, Mateusz Szczyrzyca <mateusz@abstynenci.pl> wrote: > Mam problem z polskimi znakami w aplikacji w FastCGI przesyłanymi > metodą POST. > > Kod, który odpowiada za pobranie danych z POST: > #v+ > # Tutaj różne takie już próbowałem > #binmode( STDIN, ":utf8" ); [...] > #v- > > Kombinuję z binmode w STDIN, oczywiście próbowałem bez, ale > niespecjalnie wychodzi, albo czegoś nie rozumiem. > > Np słowo: żółw daje: %C5%BC%C3%B3%C5%82w A skąd pomysł że znak '%' jest spoza US-ASCII? Konwersji podlegają jedynie znaki powyżej kodu 127. > Oczywiście mogę to ,,ręcznie'' pozamieniać, jednakże wydaje mi > się, że nie jest to dobre rozwiązanie tego problemu. A próbowałeś użyć modułu CGI do parsowania żądania? Bo ręczne papranie nie wydaje mi się eleganckie. -- Secunia non olet. Stanislaw Klekot
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads