Ir para conteúdo
Fórum Script Brasil
  • 0

Decodificando


Andre H.S. Mendes

Pergunta

Oi

to tentando aqui colocar um atalho pro google maps pra ver o local desejado no mapa.

porém esta vindo com os caracteres especiais ex:

[CERTO]

Avenida José De Lima Castro

[COMO ESTÁ VINDO]

Avenida José de Lima Castro

urlencode ou decode nesse caso? como usar?

[LINK PARA VER NO MAPA]

$template->set ( 'map' , '<a href="java script:windowOpen(\'' . URL . '/map.php?address=' . $map . '\', 500, 500)"><img src="' . URL . '/templates/' . $cookie_template . '/images/icons/map.png" border="0" alt=""><br>' . $lang['View_Map'] . '</a>');

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0

Olá

tentei "utf8_encode()" e o "html_entity_decode" porém o urlencode está colocando os caracteres especiais de volta.

olha o código.

if ($f['display_address'] == 'YES')
   $map = $f['address1'] . ' ' . $f['address2'] . ' ' . $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );
  else
   $map = $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );

  // linpando o endereço
  $map = str_replace ('n/a', '', $map);
  $map = ereg_replace (' +', ' ', $map);
  $map = urlencode ($map);
  
  // abrindo em uma nova janela
  $template->set ( 'map' , '<a href="java script:windowOpen(\'' . URL . '/map.php?address=' . $map . '\', 500, 500)"><img src="' . URL . '/templates/' . $cookie_template . '/images/icons/map.png" border="0" alt=""><br>' . $lang['View_Map'] . '</a>');

sem URLENCODE o texto fica normal com os acentos

ex: José de Lima Castro

com URLENCODE o texto fica com os caracteres especiais.

ex: Jos&eacute; de Lima Castro

e como essa informação é passada atraves da URL não tem como não usar o URLENCODE, se não fica tudo com espaço.

aguem sabe um jeito de arrumar isso?

Editado por Andre H.S. Mendes
Link para o comentário
Compartilhar em outros sites

  • 0

Explicando melhor:

essas são as informações do link quando eu clico nele, passadas pela URL:

http://www.endereco.com.br/map.php?address=rua+jos&eacute;+de+lima+castro+42+Londrina+Paran&aacute;

Como podem ver está quase tudo certo, tirando que:

"jos&eacute;" deveria ser "José"

"Paran&aacute;" deveria ser "Paraná"

como que eu arrumo isso?? pois com esses caracteres especiais o link não funciona corretamente.

usando o URLENCODE() acontece isso, porem sem ele acredito que não seja possivel.

t=

Editado por Andre H.S. Mendes
Link para o comentário
Compartilhar em outros sites

  • 0

Fácil!

<?php echo urldecode("http://www.endereco.com.br/map.php?address=rua+jos&eacute;+de+lima+castro+42+Londrina+Paran&aacute;") ?>

OBS: Por que eu não respondi antes se era fácil né? =P

Editado por Wanderson Camargo
Link para o comentário
Compartilhar em outros sites

  • 0

Wanderson ^^

tpw. não sei se você ali pra cima, mas ele já está com urlencode.

if ($f['display_address'] == 'YES')
   $map = $f['address1'] . ' ' . $f['address2'] . ' ' . $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );
  else
   $map = $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );

  // linpando o endereço
  $map = str_replace ('n/a', '', $map);
  $map = ereg_replace (' +', ' ', $map);
  $map = urlencode ($map);
  
  // abrindo em uma nova janela
  $template->set ( 'map' , '<a href="java script:windowOpen(\'' . URL . '/map.php?address=' . $map . '\', 500, 500)"><img src="' . URL . '/templates/' . $cookie_template . '/images/icons/map.png" border="0" alt=""><br>' . $lang['View_Map'] . '</a>');

já está usando o URLENCODE(). se o link ficar com &eacute; ou afins fica inválido quando vou pegar as informações.

Link para o comentário
Compartilhar em outros sites

  • 0

URL DEEEEEEEECODE

=P

Link para o comentário
Compartilhar em outros sites

  • 0

oooooooooooooooooops!

é um mapa pra visualizar o endereço, eu mando as informações pela URL e o mapa do GOOGLE le as informações.

<body onload="load(); showAddress('<? echo $_GET['address']; ?>')" onunload="GUnload()">
esse é o campo onde pega o endereço que eu mando pela URL. tentei dar DECODE ai mas fico na mesma, acho que não modifico bulufas!!!! tentei assim:
<?php $endmapa = $_GET['address']; ?>
  <body onload="load(); showAddress('<? echo urldecode($endmapa); ?>')" onunload="GUnload()">
e olá só até aonde vai a informção:
<body onload="load(); showAddress('rua jos')" onunload="GUnload()">

a informação para no primeiro caractere especial ( &eacute;)

Editado por Andre H.S. Mendes
Link para o comentário
Compartilhar em outros sites

  • 0

antes desse echo imprime o GET por favor?

Desculpa a demora!

Link para o comentário
Compartilhar em outros sites

  • 0

Ola Wanderson ^^ que isso fica sussa!

adivinha o que veio no GET? rs

"rua jos"

mesma coisa.

MOUSE EM CIMA DO LINK:

linkpr5.th.jpg

COMO FICA NA BARRA DE ENDEREÇO:

.../map.php?address=rua+jos&eacute;+de+lima+castro+42+Londrina+Paran&aacute;

COPIA DO LINK:

java script:windowOpen('http://www.SITE.com.br/map.php?address=rua+jos%26eacute%3B+de+lima+castro+42+Londrina+Paran%26aacute%3B',%20500,%20500)

PHP ONDE É CONSTRUIDO O LINK:

if ($f['display_address'] == 'YES')
   $map = $f['address1'] . ' ' . $f['address2'] . ' ' . $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );
  else
   $map = $f['city'] . ' ' . getnamebyid ( LOCATIONS_TABLE, $f['location'] );

  // Cleans the address data to pass it to the new script
  $map = str_replace ('n/a', '', $map);
  $map = ereg_replace (' +', ' ', $map);
  $map = urlencode ($map);
  
  // Will open the map in the new window
  $template->set ( 'map' , '<a href="java script:windowOpen(\'' . URL . '/map.php?address=' . $map . '\', 500, 500)"><img src="' . URL . '/templates/' . $cookie_template . '/images/icons/map.png" border="0" alt=""><br>' . $lang['View_Map'] . '</a>');

  unset ($map);
PHP E HTML FINAL DO LINK:
<?php $endmapa = $_GET['address']; ?>
  <body onload="load(); showAddress('<? echo urldecode($endmapa); ?>')" onunload="GUnload()">

Editado por Andre H.S. Mendes
Link para o comentário
Compartilhar em outros sites

  • 0

coloca o html final do browser deixa eu ver...

cara na boa, se eu fosse tu começava do zero XD

Link para o comentário
Compartilhar em outros sites

  • 0

hmm tive uma idéia.

Se eu usar o string replace do php? para tirar todos os acentos antes de fazer o link?

$com_acentos=array(
    "&aacute;","&Aacute;","&atilde;","&Atilde;",
    "&acirc;","&Acirc;","&agrave;","&Agrave;",
    "&eacute;","&Eacute;","&ecirc;","&Ecirc;",
    "&iacute;","&Iacute;","&oacute;","&Oacute;",
    "&otilde;","&Otilde;","&ocirc;","&Ocirc;",
    "&uacute;","&Uacute;","&uuml;","&Uuml;",
    "&ccedil;","&Ccedil;");
$sem_acentos=array(
    "a","A","a","A",
    "a","A","a","A",
    "e","E","e","E",
    "i","I","o","O",
    "o","O","o","O",
    "u","U","u","U",
    "c","C");

$input_string  = 'Ações em Alta. Série positiva:[áéíóúÁÉÍÓÚçÇ]';
$output_string = str_replace($com_acentos,$sem_acentos,$input_string);

echo 'input_string : ' . $input_string  . " <br />\n";
echo 'output_string: ' . $output_string . " <br />\n";

O que acha? ^^ vo testa

Link para o comentário
Compartilhar em outros sites

  • 0

\o\\o//o/

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...