jcfr Posted October 2, 2009 at 02:34 PM Report Share #289646 Posted October 2, 2009 at 02:34 PM boas pessoal estou com um grande problema, quero enviar parte de uma pesquisa por metodo GET, isso eu consigo fazer o meu problema é que ao receber os dados vêm alterados, por exemplo quero enviar a seguinte pesquisa: $sqld = "FROM `automoveis` WHERE `ano` >$anoum AND `ano` <$anodois AND `km` >$minkm AND `km` <$maxkm AND `preco` >$precoum AND `distrito` LIKE '$distrito'"; é apenas parte da minha pesquisa e é so isto que quero enviar, envio atraves do seguinte codigo: echo "<a class='normal' href=\"".$_SERVER['PHP_SELF']."?pag=$proximo&act=1&sqld=$sqld\"> Próximo</a>"; recebo a pesquisa desta forma: if (!isset($_GET['sqld'])){ //--------Se a página actual não estiver definida //$sqld = 1; //---------Passa a estar, e é apresentada como sendo a 1ª. }else{ //-------Se já estiver definida. $sqld = $_GET['sqld']; //-------Usa-se a página que é. } echo "$sqld"; e como podem ver escrevo-a para ver o que recebi... o resultado é o seguinte: FROM `automoveis` WHERE `ano` >1958 AND `ano` <2010 AND `km` >0 AND `km` <260000 AND `preco` >0 AND `distrito` LIKE \'Viseu\' os valores estao correctos, o meu problema é que acrescenta duas barras a tudo o que seja texto, se a pesquisa não tiver texto tudo funciona bem, se tiver texto acrescenta duas barras e já não posso usá-la... no servidor local isto não acontece, mas no host acontece, alguém sabe como resolver, ou como retirar as barras?muito obrigado Link to comment Share on other sites More sharing options...
jcfr Posted October 2, 2009 at 03:10 PM Author Report Share #289654 Posted October 2, 2009 at 03:10 PM estive a pensar e a unica forma que me lembro de resolver o problema é atribuir valores numericos às minhas variaveis como no caso o distrito, assim receberia um numero em vez de uma palavra e nao daria erro, o problema é que tenho de alterar a pagina toda pois nas zonas de escrita tenho de verificar qual é o numero e escrever a palavra correspondente em vez de simplesmente escrever a variavel, isso ia dar-me muito trabalho porque já tenho quase tudo pronto e teria de alterar muita coisa, se me conseguissem ajudar a arranjar uma forma melhor agradecia senão lá terá que ser... Link to comment Share on other sites More sharing options...
jcfr Posted October 2, 2009 at 04:22 PM Author Report Share #289662 Posted October 2, 2009 at 04:22 PM bem ja resolvi o meu problema sem ter de recorrer a atribuiçao de numeros, mas não foi enviando a parte da pesquisa que queria mas sim enviando todos os dados mas obrigado na mesma... ainda assim se alguem souber como fazer gostava de saber também... obrigado a todos Link to comment Share on other sites More sharing options...
softklin Posted October 2, 2009 at 05:51 PM Report Share #289673 Posted October 2, 2009 at 05:51 PM Espera aí, tu envias a pesquisa (SQL) por GET, ou seja, visivel no endereço? Isso é perigosíssimo, e nada recomendado! Se alguém tiver acesso a esse URL, pode manipular, apagar e fazer o que lhe apetece da base de dados. Deves considerar uma nova estratégia para guardares o teu SQL. O facto da string "Viseu" estar ladeada por plicas significa que existe alguma função que escapa a query, como o mysql_real_escape_string, ou a função stripslashes de PHP. Nick antigo: softclean | Tens um projeto? | Wiki P@P Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post. Link to comment Share on other sites More sharing options...
jcfr Posted October 5, 2009 at 08:17 AM Author Report Share #289992 Posted October 5, 2009 at 08:17 AM eu nunca envio a consulta por get nem seker por post, a consulta é sempre determinada em novas paginas... nakele caso é que estava com um +problema de paginaçao e ate a altura a unica forma de resolver o problema que me tinha lembrado era fazer isso era so numa pagina e como tenho as paginas todas a trabalhar dentro de frames o url nunca se vê APARECE SEMPRE SO WWW.DOMINIO.COM e nao se vê nada, alias por norma todos os dados que envio sao por post seja onde for, so quando nao tenho alternativa é que uso get... mas obrigadao, decidi enviar as variaveis em vez da consulta e resolvi o problema... Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now