Douglas 6 Denunciar post Postado Fevereiro 22, 2006 Faz a criptografia da variável e seu valor. Não muda o funcionamento recuperar valor do $_GET, você continua recuperando o valor das variaveis de URL pelo $_GET. Quem tiver funções de antiSQL, pode incluir na função doDecodifica que fica melhor ainda. Só precisa iniciar a função no inicio da página. Se o usuário tentar colocar alguma letra/número da string criptografada irá gerar um erro. // Quem já usa o PHP5, pode colocar a função doDecodifica com try/catch; <?php/* * Douglas Brito de Medeiros** Criptografia de variaveis de URL* 21 Fevereiro 2006*/function doCodifica($string){ return $limpa = urlencode(base64_encode(gzcompress($string)));} function doDecodifica($string){ $descomprime = @gzuncompress( base64_decode( $string ) ); if( !$descomprime ) { exit("A URL informada é inválida!"); } $html = htmlentities( $descomprime ); $url = parse_url($html); $parametros = explode("&", $url['query']); for($i=0;$i<count($parametros);$i++) { $valor = explode("=", trim( urldecode( strip_tags( $parametros[$i] ) ) ) ); $_GET[ $valor[0] ] = $valor[1]; }}doDecodifica($_GET['pagina']);?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Criptografia de variaveis de URL</title></head><body> <p> <a href="index.php?pagina=<?php echo doCodifica('?a=0123456789&b=abcdefghiJKLMNOP&lalala=12821jhdfnjsdH&iMasters=çãéáâã][a'); ?>"> Envia URL - <strong>?a=0123456789∓b=abcdefghiJKLMNOP&lalala=12821jhdfnjsdH&iMasters=çãéáâã][a</strong> </a> </p> <p>--------------------------------------------------</p> <?php foreach($_GET as $nome => $valor) { printf("<p><strong>\$_GET['%s']</strong> = %s</p>", $nome, $valor); }?></body></html> Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Fevereiro 22, 2006 E ai Douglas ate você ja ta manjando de php hem? é isso ai parabens Compartilhar este post Link para o post Compartilhar em outros sites
Perfect Lion 10 Denunciar post Postado Fevereiro 22, 2006 Douglas ta de parabens.. ta ficando bom em... como o fabyo disse ja ta manjando =) Compartilhar este post Link para o post Compartilhar em outros sites
Douglas 6 Denunciar post Postado Fevereiro 22, 2006 Que nada, fiquei o dia inteiro pesquisando... hehehe :)Obrigado pessoal... Compartilhar este post Link para o post Compartilhar em outros sites
Illidan 0 Denunciar post Postado Fevereiro 22, 2006 Muito bom, mesmo! É ótimo para aquelas variáveis enviadas pela url que não queremos deixar legíveis para o usuário. Parabéns! :) Compartilhar este post Link para o post Compartilhar em outros sites
Douglas 6 Denunciar post Postado Fevereiro 22, 2006 Valeu Illidan!A função ajuda, apesar de ser possível decodificar a string. Para usuários leigos ajuda muito.Pena que o PHP ainda não possui funções de criptografia com chaves, eu tenho um função em Coldfusion que faz isso (eu me basiei nela para fazer essa), e para descriptografar a URL precisa da chave.Mas ela tem problema, é que eu ainda não consegui fazer ele saber se a string é válida ou não como essa função do PHP. Compartilhar este post Link para o post Compartilhar em outros sites
jcfalcone 0 Denunciar post Postado Junho 25, 2006 cara eut o aqui mexendo na funçãoe num entendi pra que serve o decodificaeu nao entendi muito bem as funçõesnum seria pra devolve o valor descriptografado?vlw Compartilhar este post Link para o post Compartilhar em outros sites
nknk 3 Denunciar post Postado Julho 23, 2007 Eu tb não entendi, diz um exemplo prático e como aplicar esse código. ;) Compartilhar este post Link para o post Compartilhar em outros sites
Douglas 6 Denunciar post Postado Julho 23, 2007 Pessoal, o script é para criptografar tanto as variaveis quanto os valores das mesmas. Ou seja: Em vez de sua url ficar assim: index.php?nome=Douglas&forum=PHP&site=iMastersCom o script acima vai ficar assim index.php?pagina=AKJSHD6AHE98WJKDSFHJW09SDFJSDFHJSDJ (isso é um exemplo, a criptgrafia acima nao tem esse resultado) Ou seja você vai ter muito mais segurança, pois o usuário não vai saber o que está sendo enviado pela URL, nem variavel nem valor. Da para melhorar ainda mais se implantar uma chave para criptgrafia e descriptgrafia. Compartilhar este post Link para o post Compartilhar em outros sites