Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera.
Eu tava fazendo um site em localhost e me esqueci completamente que em local ele "aceita" os espaços, mas na web ela meio que adiciona o %20, não é?
Então fui procurar saber mais sobre isso e descobri o urldecode.
O que eu quero saber é, como e onde eu devo usar?
Por exemplo, eu tenho um site de frases, e algumas frases apresentam caracteres especiais e espaço, quando passar pelo "GET" a url vai ficar com aqueles simbolos.
Então, como eu poderia usar neste código?
while ($frases = mysql_fetch_array($res)){
echo "
<div class='frases'>
<span class='italico'> \"$frases[frase]\" </span>
<br />
<br />
<b>- $frases[nome]</b> (<a href='teste.php?autor=$frases[autor]'>$frases[autor]</a>)"?>
<?php if(isset($_SESSION['nome_usuario'])) {?>
<?php echo "<span class='excluir'><a class='btn btn-danger' href='deletar.php?id=$frases[id]'><i class='icon-remove'></i></a></span>"
É só um exemplo, mas se o autor tiver 2 nomes (Santos Dumont), como eu usaria o urldecode?
Valeu!
Ok, muito obrigado pelas dicas.
Mas não entendi a primeira frase da sua resposta: "ocê uso no seu programa, imagino eu que em..."
E outra coisa, porque não devo usar mais a função mysql?
Valeu.
Um pequeno erro de digitação. Ao invés de uso seria usa. ;)
Quanto às funções mysql_* o motivo é que a extensão MySQL já está depreciada, isto é, a grosso modo, marcada para elimação em versões futuras do PHP.
Como alternativa você tem a MySQLi ou a PDO.
Interresante não sabia que as funções mysql_ estava sendo descontinuada até dei uma olhada e vi mesmo no php.net
Você uso no seu programa, imagino eu que em [inline]$frases[frase][/inline]
Atente para apenas duas coisas no seu código:
1. As funções mysql_* não devem mais ser utilizadas.
2. [inline]$frases[frase][/inline] está errado. O correto é [inline]$frases['frase'][/inline]
se seus alertas de erro estivessem ativados ou altos o suficiente você veria vários erros de Undefined constant pois os índices de um array associativo são strings e, mesmo que constantes possam ser utilizadas, estas devem ter sido previamente definidas, o que não parece ser o caso.