• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

brunocorreia

mp3 em BD

4 mensagens neste tópico

como posso enviar um ficheiro de mp3 para uma bd, que campos vou presisar numa bd e como é que retiro essa som em mp3 de acordo com determinado ID

algum me pode ajudar

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem vindo ao fórum!

não havia necessidade de abrir dois tópicos para a mesma pergunta.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ora bem, para guardar um ficheiro MP3 (ou qualquer outro tipo binário), precisas de um campo do tipo BLOB, preferencialmente um MEDIUMBLOB (no mysql, penso que outros DBMS devem ter algo igual/similar), que permite guardar até 16MB de dados. Para "enviar" o ficheiro, basta uma query do tipo "INSERT INTO tabela (ficheiro) VALUE ("'.$ficheiro.'")". A variavel $ficheiro tem de ter o conteudo do ficheiro, obtido por exemplo pela função file_get_contents().

Dá jeito guardar também o tamanho do ficheiro, e o MIME type (a não ser que tenhas a certeza que vais usar exclusivamente ficheiros MP3, mas mesmo assim é sempre bom ter isso, não custa muito adicionar e se mais tarde precisares já lá está).

Para retirar o som, basta enviares o conteudo do campo da tabela para o browser (suponho que seja essa a intenção), usando qualquer coisa tipo isto, guardas isto num ficheiro "download.php", por exemplo:

...

$consulta = mysql_query('SELECT * FROM ficheiros WHERE id = '.$id);
$ficheiro = mysql_fetch_array($consulta);
header('Content-length: '.$ficheiro['tamanho']);
header('Content-type: '.$ficheiro['tipo'].'; charset=UTF-8');
header('Content-Disposition: attachment; filename='.$ficheiro['nome']);
echo $ficheiro['ficheiro'];

isto assumindo que tens na tabela os campos "tamanho" (tamanho do ficheiro), "tipo" (MIME type do ficheiro), e "nome" (o nome que queres dar ao ficheiro). Podes precisar de alterar o charset, conforme o que tens na base de dados.

Ah, e bem vindo ao fórum!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora