pega_variaveis.php
3.63 KB
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<?php
/*
Title: pega_variaveis.php
Processa os arrays $_GET e $_POST, transformando-os em variáveis conforme as chaves.
Deve ser incluído sempre no início dos programas em PHP utilizados pelo i3Geo, evitando que o parâmetro "REGISTER_GLOBALS"
do PHP precise ser definido como "On".
No caso do uso de POST do lado cliente com a biblioteca CPAINT, é feito o processamento
dos argumentos definidos na chamada call. Para fazer a chamada utilizando-se POST, deve-se seguir o exemplo abaixo:
var cp = new cpaint();
cp.set_response_type("JSON");
cp.set_transfer_mode("POST");
var p = g_locaplic+"/classesphp/mapa_controle.php?g_sid="+g_sid;
cp.call(p,"criaSHPvazio",ativanovotema,"funcao=criashpvazio,tema=teste");
O parâmetro "funcao=criashpvazio,tema=teste" será transformado em variáveis, ou seja,
$funcao = "v";
$tema = "teste";
Licenca:
GPL2
i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil
Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
Este programa é software livre; você pode redistribuí-lo
e/ou modificá-lo sob os termos da Licença Pública Geral
GNU conforme publicada pela Free Software Foundation;
Este programa é distribuído na expectativa de que seja útil,
porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
Consulte a Licença Pública Geral do GNU para mais detalhes.
Você deve ter recebido uma c�pia da Licença Pública Geral do
GNU junto com este programa; se não, escreva para a
Free Software Foundation, Inc., no endereço
59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
Arquivo:
i3geo/classesphp/pega_variaveis.php
*/
//echo "<pre>";
//var_dump($_POST);exit;
error_reporting(0);
if (isset($_GET))
{
foreach(array_keys($_GET) as $k)
{
$k = str_ireplace(array(" ","delete","drop","update","insert","exec","system",";"),"",$k);
if ($_GET[$k] != "''"){
$v = strip_tags($_GET[$k]);
$v = str_ireplace(array("delete","drop","update","insert","exec","system",";"),"",$v);
eval("\$".$k."='".(trim($v))."';");
}
}
}
//var_dump($_GET);exit;
if (isset($_POST))
{
//var_dump($_POST);exit;
foreach(array_keys($_POST) as $k)
{
$k = str_ireplace(array(" ","delete","drop","update","insert","exec","system",";"),"",$k);
$_POST[$k] = str_ireplace(array("delete","drop","update","insert","exec","system",";"),"",$_POST[$k]);
if (($_POST[$k] != "''"))
eval("\$".$k."='".(strip_tags(trim($_POST[$k])))."';");
if (($_POST[$k] != "''") && ($k == "cpaint_argument"))
{
foreach($_POST["cpaint_argument"] as $argumento_)
{
if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN'))
{$argumento_ = str_replace("\\\"","",$argumento_);}
else
{$argumento_ = str_replace("\"","",$argumento_);}
$argumento_ = explode('"',$argumento_);
$argumento_ = implode("&",$argumento_);
$parametros_ = explode("&",$argumento_);
foreach($parametros_ as $parametro_)
{
$p_ = explode("=",$parametro_);
$parametro = $p_[0];
$p_ = array_slice($p_, 1, count($p_));
$valor_ = implode("=",$p_);
if($parametro != ""){
$valor_ = str_replace("'","*#*",$valor_);
eval("\$".$parametro."='".(trim($valor_))."';");
eval("\$".$parametro."=str_replace('*#*','\'',\$".$parametro.");");
}
}
}
}
}
}
//echo $exps;exit;
?>