Jump to content


Photo

Problema Com Link Em Arquivo Com Caracteres Especiais


  • Faça o login para participar
3 replies to this topic

#1 Thiago Franzoi

Thiago Franzoi

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Não informado

Posted 15/07/2006, 17:49

Seguinte galera, este é meu primeiro post e sou iniciante em PHP, gostaria de saber se alguém pode me ajudar no problema abaixo: :D

- Bom tenho um script onde faço um laço em um diretório e busco todos os arquivos(pdf) e crio o link para eles. O problema é que são muitos arquivos em cada diretório e eles tem varios caracteres inválidos para link ex:(` º - ^ ´ Ç ~), eu percebi que no dreamweaver quando apontamos um link para um arquivo com estes tipos de caracter ele transforma este link, tornando ele válido. Gostaria de saber se no PHP tem alguma função que faça isso. Abaixo uma parte do código:

(mais codigo acima...)

while($file=$dir->read())
{
if (is_file($file))
{
if ($file != ".." and $file != "." and $file != "index.php")
{
print ("<img src='../../img/acrobat2.JPG' width='19' height='19' align='absmiddle'> <a class='links' href=\"$PATH$file\" target='_blank'>".str_replace(".pdf", "", $file)."</a><br>");
}
}

(...continua)

fica assim o link com o cod. acima:

<img src='../../img/acrobat2.JPG' width='19' height='19' align='absmiddle'> <a class='links' href="./Lei 1031-05 - Alteração Lei nº 802.pdf" target='_blank'>Lei 1031-05 - Alteração Lei nº 802</a>

ai assim não funciona, pq o link vêm com o nome do arquivo completo da forma que está no diretório..


Agora abaixo quando faço pelo dreamweaver:

fica assim o mesmo link:

<img src='../../img/acrobat2.JPG' width='19' height='19' align='absmiddle'> <a class='links' href="./Lei%201031-05%20-%20Altera%E7%E3o%20Lei%20n%BA%20802.pdf" target='_blank'>Lei 1031-05 - Alteração Lei nº 802</a>

ai assim o link funciona com essa codificação que o dreamweaver coloca...

Ou seja, o nome do arquivo é:

Lei 1031-05 - Alteração Lei nº 802.pdf

ai gostaria de saber se tem alguma função, metodo, gambi, qualquer coisa que deixe ele assim:

Lei%201031-05%20-%20Altera%E7%E3o%20Lei%20n%BA%20802.pdf


Tá ai galera, quem puder me ajudar, fico muito grato.

Valeuu um forte abraço

#2 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 15/07/2006, 18:01

Cara, verifica se a função HTMLSPECIALCHARS() lhe ajuda!

T+
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#3 Thiago Franzoi

Thiago Franzoi

    Novato no fórum

  • Usuários
  • 3 posts
  • Sexo:Não informado

Posted 15/07/2006, 18:50

ixi veio não funcionou ainda...

retornou o seguinte:

Lei%201031-05%20-%20Alteração%20Lei%20nº%20802.pdf

ainda manteve "çã" e o "º"

ai da erro ainda....putz !


Cara, verifica se a função HTMLSPECIALCHARS() lhe ajuda!

T+



#4 victorhb

victorhb

    24 Horas

  • Usuários
  • 489 posts
  • Sexo:Masculino
  • Localidade:Brasília-DF

Posted 15/07/2006, 19:10

Cara use a função trim assim, trim($nomedoarquivo,$invalidchars[], aí antes vc cria esse array invalidchars, e coloca todos os caracteres que você quer retirar, entendeu?

Editando:Agora vi que trim, não aceita array então, você pode usar um foreach() sabe como?

Edição feita por: victorhb, 15/07/2006, 19:18.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq