Baixe esta biblioteca aqui: download
Para importar use: local cgi = inclua’pcgi’;
str_decod = cgi.decod(str);
Processa uma string str com caracteres especiais do método POST ou GET retornando a string decodificada. Ex. troca o + por espaço.
var_nome = cgi.obt_var(str, ‘varnome’);
Processa uma string str obtida pelo método POST ou GET e procura pelo nome passado no segundo parâmetro retornando seu valor ou nulo caso não encontre.
tabvar = cgi.obt_tabvars( str );
Processa string str e procura por nomes e valores retornando uma tabela no seguintes esquema:
tabvar.nome = valor
ex.:
1 2 3 4 5 6 7 8 9 |
s = "nome=Pedro+Ferreira&idade=30" tabvar = cgi.obt_tabvars(s); para i , v em pares( tabvar ) inicio imprima(i , v); fim //saída: //nome Pedro Ferreira //idade 30 |
Funções de variáveis de ambiente
Essas funções retornam dados das variáveis do servidor.
O modelo é: cgi.va.nome_metodo(); Todas retornam string ou nulo e não possuem parâmetros.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
cgi.va.gateway_interface(); //retorna a versão cgi ex.: CGI/1.1 cgi.va.path(); //retorna o path dos executáveis ex.: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin cgi.va.pasta_servidor(); //retorna a pasta de acesso web do servidor ex.: /opt/lampp/htdocs cgi.va.serv_nome() //nome do servidor (endereço), ex.: localhost cgi.va.path_info() // informação exta do caminho passado para o cgi cgi.va.host_remoto() //host remoto caso haja um = nulo cgi.va.script_abs()//caminho do cgi absoluto. ex.: /opt/lampp/htdocs/cgi/var_env.pri.cgi cgi.va.serv_protocolo();// protocolo servidor, ex.: HTTP/1.1 cgi.va.http_aceito(); //tipos de arquivos aceitos. Ex.: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 cgi.va.http_cookie()//retorna o cookie; cgi.va.https(); //retorna "on" se a conexão for segura. cgi.va.http_de(); //O email do cliente (usuário web navegando). Geralmente os navegadores não têm suporte a essa variável. cgi.va.ip_remoto(); //ip do cliente. ex.: 127.0.0.1 (neste caso ip local) cgi.va.tipo_autent(); //método de autenticação usado para validar um usuário cgi.va.var_string();//retorna a string enviada pelo método GET. Aquela string anexada após o ? na url. cgi.va.path_translated();//uma versão traduzida do caminho dado pela função cgi.va.path_info(); cgi.va.serv_porta(); //porta do servidor usada para conexão = 80 cgi.va.serv_admin(); //email do administrador do servidor. Ex.: you@example.com cgi.va.nome_script(); //retorna o caminho relativo do cgi. Ex.: /cgi/var_env.pri.cgi cgi.va.tamanho_conteudo(); //tamanho em bytes ou caracteres do dado passado pelo método POST cgi.va.http_url_atual(); //url da pasta atual. Ex.: http://localhost/cgi/ cgi.va.tipo_conteudo(); //tipo do conteúdo requisitado, ex.: text/html cgi.va.usuario_remoto(); //nome do usuário autenticado. cgi.va.remote_ident(); //o usuário fazendo a requisição. Esta variável só estará definida somente se NCSA IdentityCheck estiver habilitada, e se a máquina do cliente tiver suporte a RFC 931 identification scheme (ident daemon); cgi.va.http_nav(); //retorna os dados no navegador cliente; cgi.va.metodo(); //retorna o método de requisição. GET ou POST cgi.va.serv_soft(); //dados dos softwares do servidor. Ex.: Apache/2.4.17 (Unix) OpenSSL/1.0.1p PHP/5.5.30 mod_perl/2.0.8-dev Perl/v5.16.3 |
Obrigado por ler, qualquer dúvida post aqui nos comentários ou no fórum.
Att. Adaberto