Script para captura de campos de formulário com conversão URL encode.

Publicado por Carlos Affonso Henriques. 02/03/2008

[ Hits: 5.797 ]

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.

  



Esconder código-fonte

#!/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"

Scripts recomendados

Prova 1.0

AptList v1.1 - instalação de pacotes DEB a partir de uma lista

Compartilhamento NAT

Regula o horário de uso do computador pelos filhos

Instalação de servidor LAMP com PHP 7 no Mint


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts