Codificar uma String

17/01/2006

Bom pessoal,

Fiz um navegador em dephi para interagir com um programa feito em php. Só que preciso codificar as url do navegador...

Então usei uma classe feita em php para codificar a URL, em php funciona perfeito. Gostaria de usar essa classe em delphi, como eu construiria ela?

Abaixo esta a classe em php:
class urlEncrypt{ var $var_name=´uaisegnet´; var $decode_url; # Função decriptadora function decrypt_url(){ $this->decode(); } Função que encripta todos os dados passados por GET function encode($url){ $pos_debut=strpos($url,´?´); if(!$pos_debut){$sep=´&´;} $pos_fin=strpos($url,´ ´); if($pos_fin){ $pos_long=$pos_fin-$pos_debut-1; $fin=substr($url,$pos_fin); }else{ $pos_long=strlen($url)-$pos_debut-1; } $debut=substr($url,0,$pos_debut+1); $param=substr($url,$pos_debut+1,$pos_long); $code = base64_encode($param); return $debut.$sep.$this->var_name.´=´.$code.$fin; } # Função que decripta os dados da url function decode (){ if($_REQUEST[$this->var_name]){ $this->decode_url=base64_decode($_REQUEST[$this->var_name]); parse_str($this->decode_url, $tbl); foreach($tbl as $k=>$v){ $_REQUEST[$k]=$v; global $$k; $$k=$v; } } } } ?>


Se alguem puder me ajudar...
Abraços


Redoctober

Respostas

17/01/2006

Massuda

Não sei se é exatamente e mesma coisa, mas na unit HttpApp tem uma função chamada [b:f029ee6538]HttpEncode[/b:f029ee6538] que serve para codificar URLs de modo compatível ao usado pelos servidores web (por exemplo, branco vira ´+´).


Responder Citar