Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

bRunin19

[Resolvido] Retirar caracteres especiais

Recommended Posts

Bom dia amigos,

 

Estou com o seguinte problema:

 

Estou arrumando um site de venda de cds, e em cada cd tem um player com algumas musicas do cd tocando.

Só que fizemos uma migração que ocorreu um erro em algumas músicas que pararam de tocar.

As músicas no banco de dados estão com acentos e espaços no nome.

 

Então o que eu preciso é:

Uma função PHP que percorra o banco de dados e retire os caracteres especiais e os espaços do nome das músicas.

 

Alguma dica?

 

 

Desde já agradeço.

 

[]'s

 

Bruno

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não poste mensagens ou tópicos fora dos temas centrais dos fóruns tais como piadas, assuntos políticos, futebol, etc. Para estes assuntos, existe o fórum Entretenimento. Evite entitular os tópicos com palavras como: "ME AJUDE", "PELO AMOR DE DEUS", "ESTOU DESESPERADO", "URGENTE", "SOCORRO", "HELP", "PEDIDO", "IMPLORO", "PLEASE", "DÚVIDA", ou qualquer coisa similar, assim como utilizar Caixa Alta (letras todas em maiúsculas) no título ou mesmo no corpo do tópico ou post. Utilize títulos curtos e claros, que condizam com o contexto do tópico, por favor.

 

Leia o tópico abaixo:

 

Orientações para uma boa participação

 

Com relação a retirar os caracteres especiais existem várias informações sobre isso na internet e no fórum:

 

remover acentos com php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, desculpa ae moderador, mas é que sou novo no forum!

Isso não ocorrera mais.

 

Bom, a duvuda agora é outra, gstaria de saber uma função PHP para mudar o nome dos arquivos das musicas dentro do diretorio.

 

Ex.: SEM VOCÊ.mp3 para -> SEM-VOCE.mp3

 

 

Desde já agradeço.

 

 

[]'s

 

Att,

Bruno

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, na verdade eu so preciso retirar os caracteres especiais do nome dos arquivos.

 

eu tenho a seguinte função dentro do código.

 

<?php

session_start();

include("conexao.php"); //conexão

$sql = "SELECT id_musica,id_titulo,musica FROM musicas";

$resultado = mysql_query($sql) or die("Erro na Consulta");
while ($linha = mysql_fetch_assoc($resultado)) {

   $id_musica = $linha["id_musica"];
   $id_titulo = $linha["id_titulo"];
   $musica = $linha["musica"];

   if (empty($musica))
       continue;

   $path = 'musicas/'.$id_titulo.'/'.$musica;
   $exists = file_exists($path);
   echo 'Verificando arquivo: '.$path.': ';
   echo $exists ? 'true' : 'false';
   echo '<br/>';
}

function limpaCaracter($limpador) {

   $a = array(
       '?' => 'S', '?' => 's', '?' => 'Dj', '?' => 'Z', '?' => 'z', '?' => 'A', '?' => 'A', '?' => 'A', '?' => 'A', '?' => 'A',
       '?' => 'A', '?' => 'A', '?' => 'C', '?' => 'E', '?' => 'E', '?' => 'E', '?' => 'E', '?' => 'I', '?' => 'I', '?' => 'I',
       '?' => 'I', '?' => 'N', '?' => 'O', '?' => 'O', '?' => 'O', '?' => 'O', '?' => 'O', '?' => 'O', '?' => 'U', '?' => 'U',
       '?' => 'U', '?' => 'U', '?' => 'Y', '?' => 'B', '?' => 'Ss', '?' => 'a', '?' => 'a', '?' => 'a', '?' => 'a', '?' => 'a',
       '?' => 'a', '?' => 'a', '?' => 'c', '?' => 'e', '?' => 'e', '?' => 'e', '?' => 'e', '?' => 'i', '?' => 'i', '?' => 'i',
       '?' => 'i', '?' => 'o', '?' => 'n', '?' => 'o', '?' => 'o', '?' => 'o', '?' => 'o', '?' => 'o', '?' => 'o', '?' => 'u',
       '?' => 'u', '?' => 'u', '?' => 'y', '?' => 'y', '?' => 'b', '?' => 'y', '?' => 'f'
   );

   $limpador = str_replace('&', '-and-', $limpador);
   $limpador = trim(preg_replace('/[^\w\d_ -]/si', '', $limpador)); //remove all illegal chars
   $limpador = str_replace(' ', '-', $limpador);
   $limpador = str_replace('--', '-', $limpador);

   return strtr($limpador, $a);

   return $limpador;
}

 

porem esta função só esta funcionando na hora de dar upload nas imagens.

 

mas eu preciso fazer o codigo varrer o banco, mudar os nomes e mudar os nomes tambem dentro do diretorio, para as musaicas voltarem a tocar.

 

 

Desde já agradeço.

 

Att,

Bruno

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo bRunin19 basta acessar os links que te passei

e estudar as funções que você consegue.

 

A função que faz a substituição dos caracteres você já

tem.

 

Agora é só montar a lógica e utilizar as funções postadas no tópico.

 

O google tem vários exemplos também.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.