Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

TiagoMaker

Ocultando parametros do GET

Recommended Posts

Dae galera, no meu sistema de busca estou usando GET pois com POST não consigo retornar a página anterior, o problema é que na url fica o endereço:

 

http://www.site.com.br/?idkey=61&tipo=&placa=&txtveiculo=GOL&txtcidade=&enviar.x=0&enviar.y=0

 

e me falaram que isso deixaria meu site desprotegido, alvo fácil. Como posso contornar esse problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então isso realmente deixa o site vulnerável? Tem algum exemplo de como aplicar ajax pra sanar isso?

 

E outra, se eu colocar ajax, nao vai ter problema depois quando eu tentar usar o botão de voltar pra essa página?

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você souber implentar a função no ajax .. não ..

voce esta usando a URL Exemplo

 

pagina=2 .. ai a cada NEXT ou PROXIMO ele altera pra pagina=4 certo ??

 

apenas fazer ao contrario .. faz o GET pra ver pagina que tá .. e depois diminui 1 ex

 

$pagina = $_GET['pagina'];

$anterior = $pagina -1;

Compartilhar este post


Link para o post
Compartilhar em outros sites

então qual o problema no GET ?

 

cara , desprotegido .. a certo ponto .. so você fazer o tratamento nas querys .. usar por ex

 

mysql_real_escape_string
strip_tags 

entre outros ..

 

e o GET ele pode não tar passando pela URL do browser mais no Firefox , tem como ver as requisiçoes enviadas de POST etc ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte, acessa http://www.centraldasrevendas.com.br/

 

dai ali na busca digita: GOL por ex.

 

Após isso vai abrir a página listando os carros e na URL vai ta o GET. Me falaram que esses dados ali do GET dão margem pro site ser invadido. Só o que preciso fazer é uma maneira de ocultar esses dados ou algo do gênero, para evitar isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim .. resulto em

http://www.centraldasrevendas.com.br/?idkey=61&tipo=&placa=&txtveiculo=GOL&enviar.x=19&enviar.y=9&txtcidade=

 

cara .. e oque eu te disse .. tem que fazer com o ajax

alem de ficar melhor .. os dados não vao aparecer ali

 


<script type="text/javascript" language="javascript">
function xmlhttp()
{

       if (window.XMLHttpRequest)
       {
               return new XMLHttpRequest();
       }

       var versao = ['Microsoft.XMLHttp', 'Msxml2.XMLHttp', 'Msxml2.XMLHttp.6.0', 'Msxml2.XMLHttp.5.0', 'Msxml2.XMLHttp.4.0', 'Msxml2.XMLHttp.3.0','Msxml2.DOMdocument.3.0'];
       for (var i = 0; i < versao.length; i++)
       {
               try
               {
                       return new ActiveXObject(versao[i]);
               }
               catch(e)
               {
                       alert("Seu navegador não possui recursos para o uso do AJAX!");
               }
       }
       return null;
}
function enviarEmail(){

 nome = document.getElementById("nome").value;

 ajax = xmlhttp();
  if (ajax){
  ajax.open('get','pagina que vai ter a busca.php?nome='+nome, true);
  ajax.onreadystatechange = onsend;
  ajax.send(null);
  }
}
function onsend()
{
       if (ajax.readyState==4)
       {
               if (ajax.status==200)
               {

                       document.getElementById('div ou elemento que vai aparecer os resultados').innerHTML = ajax.responseText;
               }
       }
}

</script>

 

acho que voce sabe com o ajax funciona ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posso usar esse código aí na minha busca?

 

busca.php

<script type="text/javascript">

 $(document).ready(function(){

$("#placa").mask("aaa-9999");



});

</script>



<div id="box" style="position:absolute; top:55px; left:15px; width: 224px;">

        <form name="frmbusca" id="frmbusca" method="get" action="">
        <input type="hidden" name="idkey" value="61" />

          <label>Categoria</label>

            <select name="tipo" id="tipo">

              <option value="">.: Selecione :.</option>

              <? 

                $psq_tipo = "select * from tb_tipoveiculos order by id";

                   $query_tipo = @mysql_db_query($base, "$psq_tipo", $conexao);

                   while ($data_tipo=@mysql_fetch_array($query_tipo)){ ?>

              <option value="<?=$data_tipo[id];?>" <? if ($data_tipo[id]==$x[tipo]) { ?>selected="selected" <? } ?>>

                <?=$data_tipo[tipoveiculos];?>

              </option>

              <? } ?>

            </select><br style="clear:left" />





           <label>Placa</label>

            <input name="placa" type="text" id="placa" size="9" />

<br style="clear:left" />



            <label>Veículo</label>

            <input name="txtveiculo" type="text" id="txtveiculo" size="30" />

            <div id="processo" style="position:absolute; top:90px; right:85px;"></div><br style="clear:left" />

          <br style="clear:left" />

            <div align="center"><input name="enviar" id="enviar" type="image" src="images/enviar.png"  style="border:none; float:none"/></div>



Busca Avançada

      <label>Cidade</label>

            <select name="txtcidade" id="txtcidade" onchange="list_dados(this.value)">

              <option value="">.: Selecione :.</option>

             <?

                   $z = "select * from  tb_cidades order by cidade ASC";

                   $z = @mysql_db_query($base, "$z", $conexao);

                   while ($dados=@mysql_fetch_array($z)){ ?>

                   <option value="<?=$dados[id];?>"><?=strtoupper($dados[cidade]);?></option>

               <? } ?>    

            </select><br style="clear:left" />



      <label>Revenda</label>

            <select name="txtrevenda" id="txtrevenda" style="width:200px;">

        </select><br style="clear:left" />

            <div align="center"><input name="enviar" id="enviar" type="image" src="images/enviar.png"  style="border:none; float:none"/></div>

 </form>



</div>

 

lista.php

<?

if ($_GET[placa]!=''){ $pesquisa.=" and placa='".sqli($_GET[placa])."'";}

if ($_GET[tipo]!=''){ $pesquisa.=" and tipo='".sqli($_GET[tipo])."'";}

if ($_GET[marca]!=''){ $pesquisa.=" and marca='".sqli($_GET[marca])."'";}

if ($_GET[txtrevenda]!=''){ $pesquisa.=" and revenda='".sqli($_GET[txtrevenda])."'";}

if ($_GET[txtveiculo]!=''){ $pesquisa.=" and modelo like '%".sqli($_GET[txtveiculo])."%'";}

/*if ($_GET[checked]!=''){ $pesquisa.=" and modelo like '%".sqli($_GET[checked])."%'";}*/

if ($_GET[txtcidade]!=''){ 

  $juntar.=" inner join tb_revendas on tb_revendas.id=tb_estoque.revenda

             inner join tb_cidades on tb_cidades.cidade=tb_revendas.cidade

             and tb_cidades.id=".sqli($_GET[txtcidade]);

  $where ='';

}

else { $where ='where 1=1 ';}



$per_page = 16;



$sql = "select *, (select foto from tb_fotos where codigo=tb_estoque.codigo limit 1) as foto from tb_estoque $juntar $where $pesquisa order by anomodelo desc";

$query = mysql_db_query($base, "$sql", $conexao) or die("Erro ao executar comando sql ".mysql_error());

$count = mysql_num_rows($query);

$pages = ceil($count/$per_page);



?>

<script type="text/javascript" src="js/jquery_pagination.js"></script>

<input name="_placa" id='_placa' value='<?=$_GET[placa]?>' type="hidden" />

<input name="_tipo" id='_tipo' value='<?=$_GET[tipo]?>' type="hidden" />

<input name="_marca" id='_marca' value='<?=$_GET[marca]?>' type="hidden" />

<input name="_txtveiculo" id='_txtveiculo' value='<?=$_GET[txtveiculo]?>' type="hidden" />

<input name="_revenda" id='_revenda' value='<?=$_GET[chkrevenda]?>' type="hidden" />

<input name="_particular" id='_particular' value='<?=$_GET[chkparticular]?>' type="hidden" />



<input name="_txtcidade" id='_txtcidade' value='<?=$_GET[txtcidade]?>' type="hidden" />

<input name="_nomerevenda" id='_nomerevenda' value='<?=$_GET[txtrevenda]?>' type="hidden" />



<style>

#loading

{

width: 100%;

position: absolute;

}

#corpo_d li

{

list-style: none;

float: left;

margin-right: 16px;

padding:5px;

border:solid 1px #dddddd;

color:#0063DC;

}

#corpo_d li:hover

{

color:#FF0084;

cursor: pointer;

}

</style>





<? include("lateral.php");?>

<div id="detalhes" style="display:table; width:642px; margin-bottom:15px;">

<div id="aaa"></div>

  <div id="corpotop"><img src="images/top_veiculos.png" width="642" height="51" style="background:none" /></div>



  <div id="corpo_d">

    <div id="loading" style="width:150px;" ></div>

    <div id="content" ></div>

    <div id="box_pagina" style="clear:both">

    <ul id="pagination" >

     <?

        for($i=1; $i<=$pages; $i++)

         {

           echo '<li id="'.$i.'">'.$i.'</li>';

         }

      ?>

    </ul>

    </div> 

 </div>

 <div id="corpotop"><img src="images/botton_detalhes.png" width="642" height="8" /></div>

</div>



Compartilhar este post


Link para o post
Compartilhar em outros sites

cara .. identa o codigo ai .. fazendo favor ..

 

pode sim .. porem você vai ter que implementar todos parametos que vai receber no ajax

 

tal = document.getElementById("") ...................
ajax.open('get','carro.php?nome='+nome+'&tal='+tal'&tal'+tal, true);

 

sabe Js né !?

 

e isso ..

da uma estudada em Ajax .. consulte uns exemplos na internet que você chega lá !

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.