Script para captura de campos de formulário com conversão URL encode.
Publicado por Carlos Affonso Henriques. 02/03/2008
[ Hits: 6.257 ]
Homepage: capitainkurn.blogspot.com.br/
Download captura_de_campos_de_formulario_html.cgi
Outro dia destes, estava escrevendo uma aplicação em shell para manipular um banco de dados MySQL e precisei de um CGI shell para converter caracteres especiais do URL Encode para ASCII.
Então recorrí ao bom e velho sed.
#!/bin/bash
echo
echo "<html> <head> <title>Gateway Autenticado</title><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head> <body bgcolor="#FFFFCC"> "
echo "<p><font face="Arial, Helvetica, sans-serif"><strong>Sistema cadastro 0.5</strong><br>"
var=$(sed -n 'p')
CAMPO=$(sed \
-e "s/%21/!/g" \
-e "s/%40/@/g" \
-e "s/%20/ /g" \
-e "s/%23/#/g" \
-e "s/%24/\$/g" \
-e "s/%25/%/g" \
-e "s/%5E/^/g" \
-e "s/%26/\&/g" \
-e "s/%2F/\//g" \
-e "s/%5C/\\\/g" \
-e "s/%7C/|/g" \
-e "s/%2B/+/g" \
-e "s/%28/(/g" \
-e "s/%29/)/g" \
-e "s/%5B/[/g" \
-e "s/%5D/]/g" \
-e "s/%29/)/g" \
-e "s/%3D/=/g" \
-e "s/%3B/;/g" \
-e "s/%09/\\t/g" \
-e "s/%0A/\\n/g" \
-e "s/%25/%/g" \
-e "s/%7B/{/g" \
-e "s/%7D/}/g" \
-e "s/%3C/</g" \
-e "s/%3E/>/g" \
-e "s/%3F/?/g" \
-e "s/%7E/~/g" \
-e "s/%60/\`/g" \
-e "s/%27/'/g" \
-e "s/%22/\"/g" \
-e "s/%3A/\:/g" \
-e "s/%3B/;/g" \
-e "s/%C2/Â/g" \
-e "s/%E2/â/g" \
-e "s/%C1/Á/g" \
-e "s/%E1/á/g" \
-e "s/%C3/Ã/g" \
-e "s/%E3/ã/g" \
-e "s/%C0/À/g" \
-e "s/%E0/à/g" \
-e "s/%C7/Ç/g" \
-e "s/%E7/ç/g" \
-e "s/%C9/É/g" \
-e "s/%E9/é/g" \
-e "s/%C8/È/g" \
-e "s/%E8/è/g" \
-e "s/%CD/Í/g" \
-e "s/%ED/í/g" \
-e "s/%D1/Ñ/g" \
-e "s/%F1/ñ/g" \
-e "s/%D4/Ô/g" \
-e "s/%F4/ô/g" \
-e "s/%D5/Õ/g" \
-e "s/%F5/õ/g" \
-e "s/%D6/Ö/g" \
-e "s/%F6/ö/g" \
-e "s/%D2/Ò/g" \
-e "s/%F2/ò/g" \
-e "s/%D3/Ó/g" \
-e "s/%F3/ó/g" \
-e "s/%DA/Ú/g" \
-e "s/%FA/ú/g" \
-e "s/%D9/Ù/g" \
-e "s/%F9/ù/g" \
-e "s/%DC/Ü/g" \
-e "s/%FC/ü/g" \
<(echo $var))
#
echo "$CAMPO<br>"
# Caso sua aplicação não necessite do sinal + esta linha
# deve ser adcionada a seqüencia para que você possa obter
# Os espaços em branco caso isso seja necessário.
# -e "s/+/ /g"
Converte acentos e caracteres especiais para codificação HTML
sincleg: sincronizador de legendas (srt)
Verificar status do banco de dados HyperFile-Sql
Configuramdo proxy/Squid com Dialog
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Não consigo instalar distro antiga no virtualbox nem direto no hd (8)
Quais os códigos mais dificeis que vcs sabem fazer? (3)
Fiz uma pergunta no fórum mas não consigo localizar (14)
Upscaling com imagem cortada no monitor secundário ao usar iGPU Multi ... (1)
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... [RES... (8)









