mzaidan 2 Denunciar post Postado Setembro 1, 2011 Pessoal: Estou passando uns parâmetros, ai a url está ficando assim: http://www.meusite.com.br/seu_pedido/7?refazer=true Ai nessa página eu faço um: <? if( isset( $_GET[ 'refazer' ] ) ) { echo "teste"; } ?> Mas não está dando, qual seria o erro? Desde já agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Setembro 1, 2011 <?php echo time() . <br />; if( isset( $_GET[ 'refazer' ] ) ) { echo 'teste'; echo '<br />'; echo gettype( $_GET[ 'refazer' ] ); }else{ echo 'nil'; } exit; ?> obs: Isso é apenas um breakpoint, para fins de depuração. Não quer dizer que seja a solução definitiva. Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 Retornou isso: 1314880408 nil Compartilhar este post Link para o post Compartilhar em outros sites
Fvox 0 Denunciar post Postado Setembro 1, 2011 Dá um print_r($_GET) e vê o que tá setado lá. []'s Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 Retornou isso: Array ( [id] => 7?refazer=true ) Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Poste teu .htaccess Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 #Configuração Options +FollowSymLinks RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d #RewriteRule ^(.*)\/?$ city.php?ename=$1 RewriteRule ^(.*)/oferta_do_dia\/?$ index.php RewriteRule ^(.*)/ofertas_recentes\/?$ team/index.php RewriteRule ^(.*)/receba_email_diario\/?$ subscribe.php RewriteRule ^(.*)/como_funciona\/?$ help/tour.php RewriteRule ^(.*)/forum_de_discussao\/?$ forum/index.php RewriteRule ^convide_um_amigo_e_ganhe$ account/invite.php RewriteRule ^perguntas_frequentes$ help/faqs.php RewriteRule ^login$ account/login.php RewriteRule ^cadastre-se$ account/signup.php RewriteRule ^recuperar_senha$ account/repass.php RewriteRule ^verifique_seu_email$ account/verify.php RewriteRule ^minhas_compras$ order/index.php RewriteRule ^meus_cupons$ coupon/index.php RewriteRule ^meus_cupons_usados$ coupon/consume.php RewriteRule ^meus_cupons_expirados$ coupon/expire.php RewriteRule ^meus_convites$ account/refer.php RewriteRule ^meus_convites_pendentes$ account/referpending.php RewriteRule ^meus_convites_recebidos$ account/referdone.php RewriteRule ^meus_creditos$ credit/index.php RewriteRule ^configuracoes$ account/settings.php RewriteRule ^recarga_online$ credit/charge.php RewriteRule ^pesquisa$ vote/index.php RewriteRule ^contato$ feedback/suggest.php RewriteRule ^comentario_da_oferta$ account/myask.php RewriteRule ^parceria$ feedback/seller.php RewriteRule ^todos_os_comentarios$ team/ask.php RewriteRule ^sobre_nos$ about/us.php RewriteRule ^termos_de_uso$ about/terms.php RewriteRule ^trabalhe_conosco$ about/job.php RewriteRule ^lojista$ biz/index.php RewriteRule ^lojista_login$ biz/login.php RewriteRule ^(.*)/oferta/(.*)\/?$ team.php?id=$2 RewriteRule ^(.*)/comprar/(.*)\/?$ team/buy.php?id=$2 RewriteRule ^(.*)/seu_pedido/(.*)\/?$ order/check.php?id=$2 RewriteRule ^finalizar_compra$ order/pay.php RewriteRule ^(.*)/tipo_de_pagamento/(.*)\/?$ order/pay.php?id=$2 RewriteRule ^login_ou_cadastrar$ account/loginup.php RewriteRule ^meus_pontos$ credit/score.php RewriteRule ^converter_pontos$ credit/goods.php ErrorDocument 401 /index.php ErrorDocument 403 /index.php ErrorDocument 404 /index.php ErrorDocument 500 /index.php <Files ^(*.jpeg|*.jpg|*.png|*.gif)> order deny,allow deny from all </Files> Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Seu problema está aqui: RewriteRule ^(.*)/seu_pedido/(.*)\/?$ order/check.php?id=$2 Você espera 'qualquer coisa' antes de seu pedido e depois deveria esperar um número '[\d]', você vai ter que fazer uma outra reescrita, algo mais ou menos nesse sentido: RewriteRule ^(.*)/seu_pedido/([\d]*)/(.*)/(.*)?$ s.php?id=$2&$3=$4 Saída: Array ( [id] => 7 [refazer] => true ) Troquei a página apenas para teste. Minha URL ficou assim: http://127.0.0.1/a/seu_pedido/7/refazer/true Ou então .. RewriteEngine On RewriteRule ^(.*)/seu_pedido/([\d]*)/(.*)=(.*)$ s.php?id=$2&$3=$4 [NC,QSA] Saída: Array ( [id] => 7 [refazer] => true ) URL: http://127.0.0.1/a/seu_pedido/7/refazer=true Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 Mas ai como que eu vejo isso no isset? Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Você faz o isset normal ué. <?php if( isset( $_GET[ 'refazer' ] ) && ( $_GET[ 'refazer' ] == 'true' ) ){ /** * ... */ } Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 Cara, não entendi isso. O que eu devo fazer? To passando os parâmetros na página anterior assim: <a href="/{$city['ename']}/seu_pedido/{$order['id']}?refazer=true">» Escolher outra forma de pagamento</a> Não entendi esse "saída" Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Tá errado, você não vai mandar o '?'. Faça assim: <a href="/{$city['ename']}/seu_pedido/{$order['id']}/refazer=true">» Escolher outra forma de pagamento</a> Assim você teria que aplicar essa regra: RewriteRule ^(.*)/seu_pedido/([\d]*)/(.*)=(.*)$ s.php?id=$2&$3=$4 [NC,QSA] 'Saída' quer dizer o output do debug. Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 Fiz isso: <a href="/{$city['ename']}/seu_pedido/{$order['id']}/refazer=true">» Escolher outra forma de pagamento</a> E mudei no .htacess: RewriteRule ^(.*)/seu_pedido/([\d]*)/(.*)=(.*)$ s.php?id=$2&$3=$4 [NC,QSA] Era isso? Se for, não deu. Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Você esqueceu de mudar a página na regra. RewriteRule ^(.*)/seu_pedido/([\d]*)/(.*)=(.*)$ order/check.php?id=$2&$3=$4 [NC,QSA] Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 1, 2011 RESOLIDO!! Fiz assim: <? $parametros = $_SERVER['QUERY_STRING']; $ex = explode('/', $parametros); $ultima = $ex[count($ex)-1]; if ($ultima) echo "deu certo"; ?> Abraço a todos. Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Setembro 1, 2011 Legal, mas isso não era necessário sendo que você já tem o valor recebido pelo GET. Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Setembro 2, 2011 Cara, é que esse código é pronto. Ai, o endereço que está na url não era o real, estava sendo passado outra coisa, e o endereço da url, como se fosse uma máscara. Não sei como foi feito, mas a solução que eu encontrei foi essa. Obrigado pela ajuda. Abraço e fique com Deus. Compartilhar este post Link para o post Compartilhar em outros sites