Eredmény: 1 - 3 (3) összesen

Téma: Perl programozó?

  1. #1
    system g-easy logója
    Csatlakozott
    07-04-26
    Hely
    n/a
    Hozzászólás
    4.311
    Thanked 1 Time in 1 Post

    Alapbeállítás Perl programozó?

    Ha valaki ért a perl-höz? illetve tud segíteni magyar karakterek -keresésnél- való kódolásában.. az nagyon jó lenne, mert szenvedek már 3 napja..
    hihetetlen, mert az é betű fullosan megy, csak az ő meg ű nem.. Mert pl. az ő betűt erre a formára viszi: %23337%3B ez meg egyenlő #&337 ; ezzel. (csak ugye egyben) A címsorban.. az oldalon tudja is, hogy az hosszú ő, csak ugye ezt küldi el a keresésben.. így nemtalál rá semmit..

    mhm, de legalább azt már megtanultam, hogy ha a magyar karaktereket akarod tesztelni akkor az "árvíztűrő tükörfúrógép" -re kell keresni



  2. #2
    Új tag
    Csatlakozott
    07-05-18
    Hely
    Szeged
    Hozzászólás
    31
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Perl programozó?

    Próbáltad azt, hogy
    Kód:
    use HTML::Entities::Latin2;
    
    HTML::Entities::Latin2::decode($string);
    Hülyeséget írtam, a HTML::Entities::Latin2 egy lib valami arctól (google kidobta ), és csak encodeolni tud...
    Kód:
    HTML::Entities::decode($string);
    Úgy hagyja őket?

    BlackY



  3. #3
    system g-easy logója
    Csatlakozott
    07-04-26
    Hely
    n/a
    Hozzászólás
    4.311
    Thanked 1 Time in 1 Post

    Alapbeállítás re: Perl programozó?

    Ezzel kódolom és adom le a keresési parancsot (asszem):

    Kód:
    ($0 =~ m,(.*)/[^/]+,) && unshift (@INC, $1); # UNIX
    ($0 =~ m,(.*)\\[^\\]+,) && unshift (@INC, $1); # Windows
    if ($ENV{'REQUEST_METHOD'} eq 'GET') {
    my $buffer = $ENV{'QUERY_STRING'};
    my @pairs = split(/&/, $buffer);
    foreach my $pair (@pairs) {
    my ($name, $value) = split(/=/, $pair);
    $name=~tr/+/ /;
    $name=~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/ge;
    $value =~tr/+/ /;
    $value =~ s/%C5%91/chr(0xF5)/eg;
    $value =~ s/\xc3(.)/chr(ord($1) + 0x40)/eg;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/ge;
    if ($f{$name}) {$f{$name} = $f{$name} . ',' . $value}
    else {$f{$name} = $value}
    }
    }
    if ($ENV{'REQUEST_METHOD'} eq 'POST') {
    read(STDIN, my $buffer, $ENV{'CONTENT_LENGTH'});
    my @pairs = split(/&/, $buffer);
    foreach my $pair (@pairs) {
    my ($name, $value) = split(/=/, $pair);
    $name=~ tr/+/ /;
    $name=~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    $value =~ tr/+/ /;
    $value =~ s/%C5%91/chr(0xF5)/eg;
    $value =~ s/\xc3(.)/chr(ord($1) + 0x40)/eg;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    if ($f{$name}) {$f{$name} = $f{$name} . ',' . $value}
    else {$f{$name} = $value}
    }
    }
    if ($f{'action'} eq 'zeigen'){
    &Search;
    }else{
    &search;
    }
    Ezt átküldöm a crawlernek, ami ezzel értelmez:
    Kód:
    read(STDIN, $input, $ENV{'CONTENT_LENGTH'});
    @pairs = split(/&/, $input);
    foreach $pair (@pairs) {
    ($name, $value) = split(/=/, $pair);
    $name =~ tr/+/ /;
    $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    $value =~ tr/+/ /;
    $value =~ s/%C5%91/chr(0xF5)/eg;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    #$value =~ s/<([^>]|\n)*>//g;
    $in{$name} = $value;
    }
    }
    else
    {
    $in = ( grep( !/^-/, @ARGV )) [0];
    $in =~ s/\\&/&/g; } @in = split(/&/,$in);
    foreach $i (0 .. $#in) {
    $in[$i] =~ s/\+/ /g;
    ($key, $val) = split(/=/,$in[$i],2);
    $key =~ s/%(..)/pack("c",hex($1))/ge;
    $val =~ s/%(..)/pack("c",hex($1))/ge;
    $in{$key} .= "\0" if (defined($in{$key}));
    $in{$key} .= $val; } return length($in);
    }
    my @a;
    Majd a kapott eredményre valami ugyan ilyen vissza felé megoldás van.. meg benne még 20 ilyen kódsorozat, amik pl. kikapkodják az értelmetlen jeleket, levagdossák.. értelmezik a szóközt stb..ú

    eddig úgy nézki, hogy ez a rész lesz az orvosság rá:
    $value =~ s/%C5%91/chr(0xF5)/eg;

    hogy hexában felfogja, hogy pontosan melyik fajta ő betű kell..



A téma címkéi:

Könyvjelzők

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod
  •