Advertisement
Guest User

Untitled

a guest
Jun 13th, 2017
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.72 KB | None | 0 0
  1. 1. Criando o arquivo para votar:
  2.  
  3. Cria um arquivo html e escreve a tua pergunta e respostas como
  4. no exemplo seguinte:
  5.  
  6. <HTML>
  7. <HEAD>
  8. <TITLE>votação</TITLE>
  9. </HEAD>
  10. <BODY>
  11. <FONT SIZE="3">Qual a sua base de dados preferida?</FONT><BR>
  12. <FORM NAME="votação" ACTION="votacao.php" METHOD="get">
  13. <INPUT TYPE="radio" NAME="escolha" VALUE="1">MySQL<BR>
  14. <INPUT TYPE="radio" NAME="escolha" VALUE="2">msSQL<BR>
  15. <INPUT TYPE="radio" NAME="escolha" VALUE="3">PostgreSQL<BR>
  16. <INPUT TYPE="radio" NAME="escolha" VALUE="4">ODBC<BR>
  17. </FORM>
  18. </BODY>
  19. </HTML>
  20.  
  21.  
  22. 2. Criando a tabela no MySQL:
  23.  
  24. Na shell do MySQL digite após selecionar uma Base de Dados escreva o seguinte código:
  25.  
  26. CREATE TABLE votacao (id INT(2) NOT NULL auto_increment primary key, descricao CHAR(50), votos CHAR(4));
  27.  
  28. Muito bem, a tabela foi criada e está pronta a usar.
  29. Para continuar, da mesma forma que criá-mos a tabela vamos agora inserir os seguintes códigos para adicionar as opções na tabela:
  30.  
  31. INSERT INTO votacao (descricao,votos) VALUES ("MySQL","0");
  32. INSERT INTO votacao (descricao,votos) VALUES ("msSQL","0");
  33. INSERT INTO votacao (descricao,votos) VALUES ("PostgreSQL","0");
  34. INSERT INTO votacao (descricao,votos) VALUES ("ODBC","0");
  35.  
  36. Repara que só são adicionadas a descrição e os votos, mas não o ID, justamente
  37. porque quando a tabela foi criada foi designada a função de AUTO_INCREMENT, o que fará com que ela automaticamente incremente o valor.
  38.  
  39.  
  40. 3. Criar o PHP que fará todo o trabalho:
  41.  
  42. Cria um arquivo chamado votação.php e dentro dele coloque o seguinte código que será explicado detalhadamente:
  43.  
  44. <?
  45.  
  46. if ($escolha != "") { // Verifica se foi inserido um voto e prossegue em frente no caso de verdade
  47.  
  48. // Variáveis a serem alteradas
  49.  
  50. $mysql_host = ""; // local do servidor MySQL
  51. $mysql_user = "": // utilizador do MySQL
  52. $mysql_pass = ""; // senha do utilizador do MySQL
  53. $mysql_dtbs = ""; // base de dados onde a tabela foi criada
  54.  
  55. $num_resp = ""; // número de opções na tua votação
  56. $pergunta = ""; // pergunta da votação
  57.  
  58. // Nada mais a ser alterado
  59.  
  60. $mysql_conx = mysql_connect($mysql_host,$mysql_user,$mysql_pass);
  61. // ligação ao MySQL
  62.  
  63. $radio = $num_resp + 1;
  64. // para uso posterior
  65.  
  66. mysql_select_db($mysql_dtbs);
  67. // seleciona a base de dados
  68.  
  69. // aqui começa todo o trabalho do PHP para atualizar a base de dados
  70.  
  71. $query_upd = "SELECT * FROM votacao WHERE id=$escolha";
  72. $resul_upd = mysql_query($query_upd);
  73. // aqui o PHP seleciona apenas os registos que coincidem com a escolha, neste
  74. // caso so uma opção
  75.  
  76. $obj_upd = mysql_fetch_object($resul_upd);
  77. // o comando mysql_fetch_object() separa os resultados de uma query por colunas
  78. // neste caso, $obj_upd -> descrição da opção que o utilizador votou
  79.  
  80. $vot_upd = $obj_upd->votos;
  81. $vot_upd++;
  82. // separa só os votos e adicinona mais um voto
  83.  
  84. $upd_upd = "UPDATE votacao SET votos=$vot_upd WHERE id=$escolha";
  85. mysql_query($upd_upd);
  86. // atualizou a base de dados
  87.  
  88. // Agora o PHP fará a pesquisa na base de dados e retornará as opções, seus
  89. // respectivos votos, total de votos e a sua escolha.
  90.  
  91. echo "<H3>" . $pergunta . "</H3>";
  92.  
  93. for($i=1;$i<$radio;$i++) {
  94.  
  95. $query[$i] = "SELECT * FROM votação WHERE id=$i";
  96. $resul[$i] = mysql_query($query[$i]);
  97. $objet[$i] = mysql_fetch_object($resul[$i]);
  98.  
  99. echo "<FONT FACE=\"Verdana\" SIZE=\"1\"><B>" . $objet[$i]->opcao . "</B> " . $objet[$i]->descricao . "<B> " . $objet[$i]->votos . "</B><BR>";
  100.  
  101. $tot_vt += $objet[$i]->votos;
  102.  
  103. // tudo isto serve para requisitar o resultado de cada opção e exibir na tela
  104.  
  105. }
  106. echo "<FONT SIZE=\"1\"><B>Total de votos:</B>" . $tot_vt . "&nbsp;&nbsp;&nbsp;<B>Sua Escolha</B>:" . $escolha . "</FONT></FONT>";
  107. }
  108. ?>
  109.  
  110. //Pronto agorá é só testar!
  111. //Abraços
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement