Nas matérias anteriores falamos sobre vários assuntos relacionados ao PHP, tais como: Carrinho de Compras, Sistema de Votações, Notícias, entre vários outros assuntos interessantes.
Hoje gostaria de implementar nosso Blog com uma matéria prática, porém, objetiva, principalmente para quem gosta de música!
Já pensou em montar um sistema onde você possa inserir suas músicas e tocar através de qualquer computador?
Através deste sistema você terá como fazer isso…
E mais: Como fazemos em todas as nossas matérias, em anexo temos disponível os ficheiros para que tu possa estudar e testar a matéria que estamos lhe explicando.
Estrutura De Pastas Do Player De Música Em PHP
Como alguns já sabem, gosto de focar os sistemas que desenvolvo de forma limpa, prática e organizada.
Por este motivo, apresentamos abaixo a estrutura utilizada nas pastas deste Sistema:
Criando As Tabelas Na Base De Dados MySQL
Antes de partirmos para a programação, abra o ficheiro script-sql.txt (disponível em anexo) e cole seu conteúdo no Programa utilizado para gerenciamento da base de dados.
Em nossas matérias utilizamos como padrão o MySQLFront. Caso tu também esteja utilizando este programa, clique em SQL Editor e cole o conteúdo do script (conforme imagem abaixo).
Script de Conexão Ao MySQL
Tendo as pastas já criadas e as tabelas da base de dados geradas, você poderá dar início à programação.
Crie o ficheiro CONFIG.PHP e coloque dentro da pasta CONFIG.
Neste ficheiro você deverá disponibilizar o script a seguir:
$database = "localhost:3306"; // SERVIDOR E PORTA UTILIZADA
$dbname = "tutorial"; // BASE DE DADOS
$usuario = "root"; // USUÁRIO DO MYSQL
$dbsenha = ""; // SENHA DO MYSQL
$conexao=mysql_connect ($database, $usuario, $dbsenha);
if($conexao){
if (mysql_select_db($dbname, $conexao)){ print "";
}else{ print "Não foi possível selecionar o Banco de Dados"; }
}else{ print "Erro ao conectar o MySQL"; }
?>
OBS.: Veja que ao acessar o Servidor, estamos definindo também o número da Porta padrão do MySQL.
Caso a Porta utilizada não seja a 3306, efetue a alteração devida!
Usando o Menu Gerencial Do Player De Música Em PHP
O Menu Gerencial será o local onde você poderá gerenciar este Sistema!
Acompanhe abaixo alguns exemplos das páginas principais onde estaremos manipulando as informações:
index.php:
A página index.php apesar de ter uma aparência simples, é de fundamental importância para este Sistema.
Somente através dela teremos acesso ao Menu Gerencial!
Independente do endereço que você disponibilize no site, para ter acesso a esta área, insira a seguir o diretório ADMIN.
Exemplo: http://www.seusite.com/admin/
Ao acessar este diretório, o Sistema pedirá os dados de acesso.
Insira as informações abaixo (conforme imagem a seguir):
Login: teste@teste.com
Senha: 123456
autenticao.rotinas.php:
Esta será a página onde faremos todo o gerenciamento de usuários, isto é: Diremos ao Sistema quem deve ou não ter acesso à Área Gerencial.
Bem… estamos disponibilizando um script simples de acesso, porém, caso seja de seu interesse, você poderá melhorar este código.
—– Linha 02 e 03 —–
session_start();
include("../config/conexao.php");
Este é o trecho mais importante do código, pois se você não tiver este conteúdo em seu código, ele simplesmente não vai registrar a sessão, nem permitir seu acesso à base de dados.
—– Linha 06 à Linha 08 —–
$cliente_username = $_POST['usuario'];
$cliente_password = $_POST['senha'];
$enviado = $_POST['enviado'];
Através das linhas acima você receberá as variáveis com o nome do usuário, senha de acesso e o status (neste caso, utilizaremos a condição “enviado” para reforçar um pouco mais a segurança).
—– Linha 10 à Linha 29 —–
if ($enviado == "posted"){
if (!isset($cliente_username) or !isset($cliente_password)) { echo "Erro!"; exit; }
if (empty($cliente_username) or empty($cliente_password)) { echo "Dados inválidos!"; exit; }
$query = "select * from tbl_usuarios where email = '$cliente_username' and senha =
'$cliente_password'";
$result = mysql_query($query);
$number = mysql_num_rows($result);
if ($number==0) { ?>//
// }
mysql_close($conexao);
}
Nas linhas acima o script fará uma validação completa, verificando se o usuário e a senha informada existem.
Antes disso, ele só fará a leitura se a variável “enviado” (exemplo anterior) tiver o valor “posted”.
Caso este valor (que será passado através do método POST) não seja o informado, ele sequer fará a leitura no demais.
Nas linhas a seguir (após ele validar a variável “$enviado” o script fará uma série de verificações, finalizando ao registrar as sessões para o ID e NOME do Usuário selecionado. Além disso ele fará seu direcionamento à página principal.php.
principal.php:
Esta será a página principal do sistema, onde teremos acesso às demais a serem gerenciadas (conforme você pode ver na imagem a seguir).
OBS.: Apesar de também estar disponível no Sistema e no ficheiro em anexo, para não tomar muito seu tempo, falaremos nesta matéria apenas alguns detalhes do Sistema.
Certamente os comentários disponíveis nesta matéria sanarão qualquer dúvida que você tenha quanto aos demais arquivos.
—– Linha 02 à Linha 11 —–
session_start();
if (empty($_SESSION['usuario_id'])){
echo "Acesso negado!";
exit;
}else{
include('config/conexao.php');
$usuario_id = $_SESSION['usuario_id'];
$usuario_nome = $_SESSION['usuario_nome'];
}
Neste trecho do código fonte faremos uma validação!
Se o ID e NOME do usuário tiverem em uso nesta sessão, ele deverá lhe dar acesso, caso não esteja em uso ele deverá restringir o acesso.
Fará acesso também ao script CONEXAO.PHP (responsável pela conexão ao banco de dados).
Após isto, o Sistema fará algumas verificações simples neste script, só atentando para o botão sair (onde ele deverá direcionar seu acesso ao script LOGOUT.PHP – responsável pela exclusão da sessão).
player_cadastrar.php:
Esta será a página responsável pelo cadastro da música (conforme você pode ver na imagem disponível abaixo).
Como você pode ver, é uma página de cadastro, porém, receberá além das informações de cadastro o ficheiro com extensão .mp3 (extensão mais usada para músicas).
script_player.php:
Trata-se de um script exclusivo que deverá receber o conteúdo enviado pelo formulário, enviando parte dele ao banco de dados e a música ao diretório “musica”, devendo também excluir o conteúdo cadastrado quando necessário.
player_listar.php:
Através desta página você poderá de forma prática e simples listar todas as músicas cadastradas, podendo ativar, desativar ou excluir a qualquer momento (conforme a imagem a seguir).
OBS.: Caso a música esteja ativa, ela aparecerá em sua cor normal (preta). As músicas inativas aparecerão na cor vermelha, facilitando seu gerenciamento.
Página Externa
Este será o local onde você ou os internautas poderão verificar o conteúdo anteriormente cadastrado no menu gerencial.
Dividimos este conteúdo em 3 scripts:
index.php:
Através do código a seguir, você conseguirá direcionar o internauta à página inicial do Player
(conforme código e imagem a seguir):
.:: WEBMASTER.PT :: PLAYER DE MÚSICA ::.
PLAYER DE MÚSICA
musicas_selecionadas.php:
Através deste script, juntaremos o código em JavaScript disponível no ficheiro “funcoes.js” e o código em PHP disponível na página “radio.php”.
Em um trecho deste código, o sistema chamará a página rádio.php (disponível a seguir).
OBS.: Apesar de não ter muito a ser comentada, nesta página, temos disponível espaço para publicação de banner (conforme imagem a seguir).
radio.php:
Para finalizar, vamos comentar como funciona este código:
include("admin/config/conexao.php");
$query = "select * from tbl_player where status = 1 order by rand()";
$rs = mysql_query($query);
while($row = mysql_fetch_array($rs)){
$titulo_musica = $row['musica'];
?>
Este é um ficheiro .ASX responsável pela seleção das músicas.
Veja que em meio ao conteúdo, temos além do INCLUDE (que trará os dados de acesso à base de dados) um SELECT, onde trará o conteúdo da tabela em ordem randomica, porém, com status = 1.
O status 1 são as músicas ativas!
Digamos: Se você tiver várias músicas de diversos gêneros e quiser ouvir apenas as músicas do Kenny G (por exemplo), clica em desativar as demais músicas e o Sistema estará trazendo ao Player apenas as músicas de seu interesse.
Ficamos por aqui em mais uma matéria! Esperamos tê-lo ajudado em algo…
Envie-nos suas dúvidas e dê sugestões para as próximas matérias! Nosso compromisso é lhe ajudar!
Download do Código: Player de Música em PHP
38 Responses
Esta ficando cada vez mais interessante! Gostei muito!
Não só ensinou a fazer um tocador como deu uma aula de sistema de login!
Parabéns.
Obrigado Danilo. Vou repassar o seu elogio para o Quemuel! Um Abraço Rui Soares
oy cara escrevo directamente da perola do oceano indico, de Mocambique…. olha gostei muito da aula…. valeu mesmo, aprendi muito…. hy
Olá Osvaldo! Bem vindo! Obrigado pelo seu comentário! Um Abraço! Rui Soares
Cara muito bom seus Artigos, uma verdadeira aula, Parabéns
Agora estou te seguindo no twitter @_andrelittle_
Abraços @_andrelittle_
Olá André! O blogue tem vários autores. Este tutorial sobre o player de música foi escrito pelo Quemuel! Eu sou o editor e também escrevo. Pode ver o nome do autor na barra lateral do lado direito. Obrigado pelo seu comentário! Um Abraço! Rui Soares
Ola, baixei o seu codigo e depois de umas alterçoes eu consegui fazer o cadastro e o upload das musicas, porem ao abrir o player ele nao toca as musicas, se tiver alguma dica. Os navegadores usados sao firefox 3.6 e IE 8.0. Grato
Marcio, vc conseguir fazer o player tocar as música???
Estou com o mesmo problema, ainda não consegui fazer o player funcionar!
Pode me dar uma ajuda?
Abraços
isto não é para quem quer, é só mesmo para quem sabe, muito bom mesmo, parabéns 🙂
onde eu baixo o ficheiro em anexo script-sql.txt ?
faz manualmente escreve la nas tabelas e etc
Olá entao tenho algumas duvidas queria saber por que o player não envia a musica pro diretorio pois aqui no meu wamp não está enviando para o diretorio obrigado….
a desculpa não ter colocado meu email pra quem puder me ajudar é adm@twbteam.com.br
Prezados Amigos:
Gostei muito do player mais tem um detalhe
Ele anda tocando somente alguns segundos da música, teria algum lugar para se fazer essa alteração?
Amigos webmasters, bom dia!
Vejo aqui os seus scripts prontos, parabéns! É bom saber que existem pessoas que ajudam outros. Não é querendo abusar, mas poderiam me dizer onde estou errando, pois não consigo acessar a página principal, dá semre o erro autorização inexistente/senha inválida ou expirada
Muito bom, mas no Google Chorme não está funcionado.
Você pode mim ajuda?
Ola sou iniciante em PHP, mas sempre querendo aprender, estou com um problema na construçao do banco de dados , esta dando este erro,,,,, Erro
consulta SQL:
— — CRIA A TABELA DE PLAYER —–
CREATE TABLE `tbl_player` (
`id_musica` int( 11 ) NOT NULL AUTO_INCREMENT ,
`titulo_musica` varchar( 150 ) NOT NULL default '',
`artista_musica` varchar( 150 ) NOT NULL default '',
`musica` varchar( 255 ) NOT NULL default '',
`copyright` varchar( 50 ) NOT NULL default '',
`status` varchar( 10 ) NOT NULL default '',
PRIMARY KEY ( `id_musica` ) );
Mensagens do MySQL :
#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '—– CRIA A TABELA DE PLAYER —–
CREATE TABLE `tbl_player` (
`id_musica' at line 1
Também tive esse erro, é só tirar as mensagens do script, o script ficará assim:
CREATE TABLE `tbl_player` ( `id_musica` int(11) NOT NULL auto_increment, `titulo_musica` varchar(150) NOT NULL default '', `artista_musica` varchar(150) NOT NULL default '', `musica` varchar(255) NOT NULL default '', `copyright` varchar(50) NOT NULL default '', `status` varchar(10) NOT NULL default '', PRIMARY KEY (`id_musica`));
CREATE TABLE `tbl_usuarios` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(150) NOT NULL default '', `email` varchar(150) NOT NULL default '', `senha` varchar(50) NOT NULL default '', `status` varchar(10) NOT NULL default '', PRIMARY KEY (`id`));
INSERT INTO `tbl_usuarios` VALUES (1,'Administrador','teste@teste.com','123456','1');
Tira os comentarios do sql que funciona!
Retira do script a frase —–CRIA A TABELA DE PLAYER—–
Galera ficaria mais legal uma barra de estatus do envio do arquivo alguem sabe como colocar? me fale por favor ricardo.udi@hotmail.com o resto está nota 1000
Woooww.
Muito bom.
Obrigado!!
Só falta funcionar o Player no Google Chrome
na boa Rui Soares foi tu que inventou o php e ajax? vai tomar banho
o cara é um monstro( no bom sentido)
parabens muito bom a explicação. Quem sabe sabe. Rui eu não tenho muito tempo para fazer um player, qual é o valor que vc cobra para fazer um para minha radio?
Olá Marcio! Na barra lateral, consta o nome do autor de cada artigo. Este artigo foi escrito pelo Quemuel Aquino. É ótimo trabalhar com ele! Contate com ele. Estou certo que vai ser fácil trabalhar com ele.
https://www.webmaster.pt/author/quemuel
Um Abraço! Rui Soares
Boa noite, consigo inserir e listar as músicas mas quando vou a ouvir não dá nada…
Em nenhum browser… como resolvo os problemas amigo? obrigado
nao roda em google crhome e nem firefox
Fiz tudo certinho, mas na hora do login, dá erro de autenticação, estou usando o login e senha que mostra no tutorial: login: teste@teste.com senha: 123456.
Nota: já mudei o login e senha para admin/admin e nada.
Alguém pode ajudar?
Obrigado!
Lembrando que o player só vai funcionar no internet explorer no chrome ja não vai aparecer e sima apenas uma tela vermelha
Olá, consegui instalar no meu servidor, mas como eu posso colocar minha senha de administrador?
Porque não funciona no chrome ?? nossa, exelente player, porém esse detalhe está me fazendo desistir.
Oláá, os arquivos até 2Mb vão, mas a partir de 2 Mb, a música não entra na pasta, apenas no banco de dados… o que será que pode ser ?? Obrigado
Olá, é possível interligar esse painel com um site em wordpress? Gostaria de suas orientações e instruções.
Aguardo retorno.
pessoal ta dando erro na autenticação nao sei o que possa ser
Fiz o download dos arquivos, mas não consegui fazer o sistema funcionar, por favor, podem me ajudar?
Olá poderia me ajuda ? fiz tudo como no tutorial mas quando tento me logar aparece a mensagem " Autorização inexistente/Senha invalida ou expirada " pode me ajudar ??
Escrevo de Angola. Tua dica foi muito útil pra um projecto que estava a desenvolver. Precisava mesmo disso e você apareceu na hora certa. Valeu mesmo.