View
356
Download
2
Category
Preview:
Citation preview
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 1/10
Procura WebMaster.pt
X
TweetTweet
0
RSS Email Twitter YouTube
Bem Vindo À Tribo Dos WebMasters! Conversa connosco sobre SEO, Google AdWords, Redes Sociais, Blogging e Email Marketing. Aprende e ensina Programação,
Web Design, Joomla e WordPress.
Vivemos numa Marketocracia Digital, onde cada um veste a máscara duma persona. Este blog é sobre a persona
Webmaster
HomeMarketing
Google AdWords
SEO
Email Marketing
Redes Sociais
Comércio Electrónico
BloggingInternet
Motores BuscaDomínios
Histórias De SucessoProgramação
Web Design
Photoshop
HTML
CSSRecursos
Javascript
Teoria
Ideias
JoomlaWordPress
WordPress Themes
Tutoriais WordPress
Notícias WordPress
WordPress PluginsSoftware
BrowsersLinux
Windows
Mac OS
Desktop Wallpapers
Android
Ganhar Dinheiro
Home » Sistema De Votações Em PHP E MySQL
Sistema De Votações Em PHP E MySQL
Tags: php tutorial
Olá! É a primeira vez que visitas o nosso blog? Subscreve o nosso RSS Feed para receberes notificações de novos artigos. Ou segue-nos no Twitter.
Uma das formas mais práticas de analisarmos a satisfação de nossos clientes ou pedirmos sua sugestão em algo é o Sistema de Votações!
Assim como o Sistema de Notícias (anteriormente enviado), estaremos lhe enviando um sistema completo de votações, para que você possa utilizar em seu site.
Como já enviamos um sistema completo sem erros, estaremos descrevendo passo a passo este sistema com um pequeno erro, para que baseado em nossas explicações, você
possa corrigir. Ok?
Peço desculpas por este procedimento, mas… nossa intenção em lhe fornecer esta matéria com um passo a passo, é justamente para lhe orientar no desenvolvimento deste
Sistema.
Como sempre fazemos, nesta matéria comentaremos as partes mais importantes de cada script, visando facilitar seu aprendizado.
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 2/10
Passo 1: Estrutura De pastas
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:
SITE
ADMIN
CONFIG
IMAGENS (imagens do menu gerencial)
INC (
IMAGENS (imagens do site)
OBS.: Na pasta
Passo 2: Criando As Tabelas Na Base De Dados:
Antes de partirmos para a programação, abra o arquivo script-sql.txt (disponível no arquivo em anexo) e cole seu conteúdo no Programa utilizado para gerenciamento da basede dados.
Em nossas matérias utilizamos como padrão o MySQLFront. Caso você queira utilizar este programa, clique em SQL Editor e cole o conteúdo do script (conforme imagem
abaixo).
Passo 3: Script De Conexão
Tendo as pastas já criadas e as tabelas na base de dados geradas, você já pode dar início à Programação!
Crie o arquivo CONFIG.PHP e coloque dentro da pasta CONFIG.
Neste arquivo, você deverá disponibilizar o texto abaixo:
-----CONFIG.PHP -----
<?
$database="localhost:3307"; // 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"; }
?>
-----
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 3/10
Passo 4: Menu Gerencial – Formulário (index.php):
A página index.php apesar de ter uma aparência simples, é de fundamental importância para este sistema.
Através dela temos acesso ao menu gerencial!
OBS.: Para facilitar seus acessos, criamos o usuário abaixo:
Login: teste@teste.com – Senha: 123456
Passo 5: Menu Gerencial – Autenticação (autenticacao.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");
-----
Talvez esta seja a parte 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 a conexão à
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 na
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'";
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 4/10
$result = mysql_query($query);
$number = mysql_num_rows($result);
if ($number==0) { ?>
<script>alert('Autorização inexistente/Senha inválida ou expirada.');history.back();</script>
<?
exit;
} else {
$_SESSION['usuario_id'] = mysql_result($result,0,'id');
$_SESSION['usuario_nome'] = mysql_result($result,0,'nome');
?><script>document.location = '../principal.php'</script><?
}
mysql_close($conexao);
}
-----
Nas linhas acima o script fará uma validação completa, verificando se o usuário e a senha informado existem.
Antes disso, ele só fará a leitura se a variável $enviado (exemplo da linha 6 à linha 8) 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.
Passo 6: Menu Gerencial – Página Principal (principal.php):
Esta será a página principal do sistema, onde teremos acesso às demais a serem gerenciadas (conforme você pode ver na imagem abaixo).
OBS.: Apesar de também estar disponível no Sistema (no arquivo em anexo), para não tomar muito seu tempo, falaremos nesta matéria apenas dos itens Cadastrar Notícia e
Listar Notícias.
Certamente os comentários diversos 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'];
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 5/10
}
-----
Neste trecho do script faremos uma validação!
Se o ID e NOME do usuário tiver em uso nsta 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 excluir (onde ele deverá direcionar seu acesso ao script logout.php (responsável
pela exclusão da sessão).
Passo 7: Menu Gerencial – Cadastrar Enquete (enquete_cadastrar.php):
Esta é a página responsável pelo cadastro da enquete (conforme você pode ver na imagem disponível abaixo).
-----Linha 28 à Linha 35 -----
<script language="javascript" type="text/javascript" src="javascript.js"></script>
<script type="text/javascript" src="htmlarea.js"></script>
<SCRIPT src="javascript/jscripts.js"></SCRIPT>
<script type="text/javascript">
_editor_url = "htmlarea/";
_editor_lang = "en";
</script>
-----
O trecho acima chama os scripts responsáveis pelo funcionamento do Editor de Textos.
OBS.: Veja que ele chama os scripts a seguir: javascript.js, htmlarea.js, jscript.js e a pasta htmlarea.
OBS.: Veja que na imagem acima há a possibilidade de se cadastrar sua pergunta e até 4 respostas (que serão cadastradas em uma outra tabela).
Passo 8: Menu Gerencial – Script Enquete (script_enquete.php):
Trata-se de um script exclusivo que deverá receber as variáveis e tratá-las, antes de enviar cada registro ao banco de dados.
OBS.: Para saber mais sobre este script, sugerimos verificá-lo na íntegra, dentro da pasta ADMIN.
-----Linha 25 à Linha 29 -----
$acao = $_GET['acao'];
switch ($acao) {
case cadastrar_resposta:
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 6/10
-----
Assim como os demais scripts, o script_enquete.php também tem o conteúdo padrão para manter sua segurança; porém, até para facilitar seu gerenciamento, recebe por
método GET o motivo da entrada (exemplo: alterar, cadastrar, cadastrar_categoria, excluir) e por método POST receberá os valores a serem manipulados.
OBS.: Após a inserção, edição ou exclusão, seja qual for o comando utilizado, o script fará o redirecionamento para uma outra página.
Passo 9: Menu Gerencial – Listar Enquete (enquete_listar.php):
Através desta página você poderá de forma prática e simples listar todas as enquetes cadastradas no sistema, além de poder desativar o conteúdo, podendo editá-las, incluir
respostas ou efetuar sua exclusão a qualquer momento.
OBS.: Na área do DESATIVAR, coloquei uma imagem qualquer. Altere a imagem de acordo com o comando em questão.
Uma observação importante: Como gostamos de trabalhar de forma segura, quando você clicar em excluir (uma enquete), o script (script_enquete.php) automaticamente fará a
exclusão de todas as perguntas referente àquela enquete.
Passo 10: Menu Gerencial – Editar Enquete (enquete_editar.php):
Esta é uma página prática, onde de forma prática você conseguirá inserir, alterar ou excluir as suas perguntas (tendo inclusive a oportunidade de verificar o total de votos e
alterar a pergunta (conforme você pode ver na imagem abaixo).
Passo 11: Página Externa – Editar Enquete (index.php):
Através desta página você terá a possibilidade de ser direcionado para a página popup onde haverá a oportunidade de realizar a pesquisa (conforme imagens a seguir).
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 7/10
TweetTweet 0 Curtir 2 0StumbleUpon
TweetTweet
0
-----Linha 15 -----
$query_enquete2 = "SELECT * FROM tbl_enquetes,tbl_enquetes_votos WHERE tbl_enquetes.id_enquete LIKE '%$id_enquete%' OR tbl_enquetes_votos.id_enquete LIKE '%$id_enquete%' order by resposta limit 4";
-----
Na linha acima fizemos uma busca retornando registros de 2 tabelas, limitando os resultados a 4 registros.
OBS.: Para saber mais sobre o exemplo acima, te convido a visitar nossa Matéria de MySQL com o título: Efetuando o Select em 2 ou mais tabelas.
Passo 12: Página Externa – Resultado da Enquete (enquete_resultado.php):
Através desta página você poderá visualizar o resultado da enquete que você votou.
OBS.: Esta é a página que deixamos um pequeno bug para que você possa corrigir!
Não é nada demais, porém, você poderá começar a entender minha lógica de programação, para que futuramente você possa se adequar a scripts mais complexos.
Ficamos por aqui em mais uma matéria! Esperamos tê-lo ajudado em algo…
Caso você tenha alguma dúvida ou dificuldade em corrigir o bug que preparei para você, entre em contato conosco através deste Site ou através de meu email, onde terei o
maior prazer em lhe auxiliar!
Envie-nos suas dúvidas e sugestões para próximas matérias! Nosso compromisso é o de melhor lhe atender e ajudar!
DOWNLOAD: Descarregue o código utilizado neste tutorial: Sistema De Votações Em PHP E MySQL, em formato .zip.
Be Sociable, Share!
Related posts:
1. Sistema De Newsletter Em PHP e MySQL
2. Sistema De Notícias Em PHP E MySQL
3. Sistema Gerenciador De Banners Em PHP E MySQL
ShareShare
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 8/10
Logar
J Aparecido 0
RelatarResponder
Rui Soares 75p +1
RelatarResponder
felipe 0
RelatarResponder
Rui Soares 75p +1
RelatarResponder
Tatiane +2
RelatarResponder
Diego 0
RelatarResponder
Rui Soares 75p +1
RelatarResponder
barnabe Jr 0
RelatarResponder
Thiago 0
RelatarResponder
alice 0
4. Sistema De Notícias Em PHP E MySQL Parte2
5. Sistema De Notícias Em PHP E MySQL Parte3
Tags: php tutorial
Comentários (16)Classificar por: Data Classificação Última Atividade
· 159 semanas atrás
Bem explicado, mas para um leigo igual a mim, somente com auxilio vai conseguir Abraços
1 resposta · ativo 159 semanas atrás
· 159 semanas atrás
Faz download do código e tenta utilizar o código. Eu acho que para aprender código, ler não é suficiente. É preciso fazer como os cozinheiros:meter a mão na massa.
Obrigado pelo comentário e bem vindo ao nosso blog.
· 158 semanas atrás
parabens pelo tutorial. me ajudou bastante. vlwww
1 resposta · ativo 158 semanas atrás
· 158 semanas atrás
Olá Felipe! Bem vindo ao nosso blog. Obrigado pelo comentário! Desejo-lhe uma Páscoa Muito Feliz! Um Abraço Rui Soares
· 137 semanas atrás
Muito bom o tutorial parabéns ,mais estou com uma duvida eu fiz a validação do email conferir se tinha no banco de dados mysql ate ai tudo bemmais eu não tenho idéia de como posso liberar alguns privilégios no sistema só conferindo o email e nome do usuário como posso sabe se ele e oadministrador ou o usuário comum que não tem os items de um administrador algem pode me ajudar . Abraços
· 134 semanas atrás
Cara da esse erro: Nesta Linha: $i = number_format(((100 * $pm_partners[voto]) / $wtotal),0); enquete_resultado.php
Warning: Division by zero in C:xampphtdocsproxyarquivosenquete_resultado.php on line 57 nada ( 0 ) 0%
1 resposta · ativo menos de 1 minuto atrás
· 134 semanas atrás
Olá Diego! Todos os scripts estão testado em LAMP. Vou pedir ao Quemuel, autor do tutorial, para ler o seu comentário. Já viu este tutorial?http://www.webmaster.pt/enquete-animada-jquery-ph... Tem aqui a demo: http://phpwebmaster.org/demos/polling_system/ Testei e é excelente!Um Abraço! Rui Soares
· 115 semanas atrás
cara a parte de excluir categoria não está funcionando sabes me dizer o por que????
· 104 semanas atrás
Onde esta o Bug. Nao consegui indentificar. sei que o resultato nao esta somando como deveria e a votaçao. mas como corrigir?
· 85 semanas atrás
A mim dá-me este erro
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 9/10
RelatarResponder
Albert 0
RelatarResponder
Albert 0
RelatarResponder
carlos 0
RelatarResponder
Aldarci 0
RelatarResponder
carlos +1
RelatarResponder
marcos 0
RelatarResponder
Digite o texto aqui!
Nome Email Website (opcional)
Comentar como Visitante, ou logar:
Mostrar junto aos seus comentários. Não mostrado publicamente. Se você tem um website, linke para ele aqui.
Enviar Comentário
· 82 semanas atrás
COMO SUBSTITUIR O BUG? COM ESSE ERRO O SISTEMA NAO FUNCIONA...
· 82 semanas atrás
aonde está o erro, como solucionar?
· 48 semanas atrás
poxa...você bem que poderia coloar os sistemas com o bug mais ao mesmo tempo o sistema sem o bug...pois pra quem não entende nada é meiodificil conseguir detequitar e resolver isso...
obs : sei que estudando vou entender , mais se tiversse o sistema funcionando semo bug seria muito bem vindo , pois atraves dele seria mais facilestudar sem o bug.
essa é a minha opinião mais sei que nem todos irão concordar.
· 46 semanas atrás
Excelente trabalho, e a colocação do bug foi ótima pois nos ensina a valorizar o profissional e a nós mesmos. Parabéns. em tempo, sua lógica de programação é muito boa.
· 39 semanas atrás
gostaria de saber como colocar esse enquete funcionando sem esse bug, pois sou leigo em programação web e gostaria de ver essa enquetefuncionando direito para ter a oportunidade de entender mais.
· 7 semanas atrás
Belo tutorial, não sei se devido ao sistema operacional que utilizo (Ubuntu + Mysql) geraram alguns erros de variáveis, mas depois de corrigido ocálculo matemático da exibição da barra o sistema fica perfeito.
Postar um novo comentário
Assinar Nada
O Autor
Autor: Quemuel Aquino
Biografia: Queres saber mais sobre este autor? Aceda à biografia do Quemuel AquinoSite Do Autor: Webmaster.PT
O Artigo
Data: 22/03/10 às 1:42 am
Categorias: PHP | Programação
Comments (16)Visualizações: 11,220
Classificação:
(No Ratings Yet)
Print this post
14/04/13 Sistema De Votações Em PHP E MySQL | Como Criar Um Site, Blog ou Loja Virtual Gratis - WebMaster.pt
www.webmaster.pt/sistema-votacoes-php-mysql-1048.html 10/10
Artigos SEO Artigos
AdWords
WordPress Joomla Tutoriais Entrevistas
Artigos Recomendados
Artigos Recentes
Introdução Ao SVG – Scalable Vetor Graphics
Os Segredos Do Sucesso Na InternetElementos HTML Arredondados Com jQuery Curvy Corners
Guia WordPress 3 Parte13 – Plugins Posts Personalizados E Novas Taxonomias 5
Menu Espetacular Com Plugin jQuery MobilyBlocks
Guia WordPress 3 Parte12 – Plugins Posts Personalizados E Novas Taxonomias 4
Listagem Ordenada Por Letra com PHP E MySQL
Guia WordPress 3 Parte11 – Plugins Posts Personalizados E Novas Taxonomias 3
Barras De Rolagem Estilizadas Com jScrollBarFormulários Mais Seguros Com QapTcha
Conversas Com...
Rui Augusto Do Tolnetwork.com
20 Apr 2010
Entrevista Com O WebMilionario
30 Mar 2010
Paulo Faustino Do EscolaDinheiro.com
23 Mar 2010
Inês Gonçalves Da Google
3 Feb 2009
Custódio Do DinheiroOportunidade.com
24 Jan 2009
Tag cloud
php tutorial controle jQuery joomla tutorial web design twitter css3 Orkut repositório site svn git ajax jquery ajax form php mail versão carrinho de compras
Todos os direitos reservados | Quem Somos | Contactar | Política De Comentários | Web Hosting por Hosting Portugal
Webmaster é uma marca da Webvila Lda
Recommended