login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Poll/Stem systemen > Easy Poll

Easy Poll

Auteur: Deko - 27 september 2004 - 21:40 - Gekeurd door: Dennisvb - Hits: 21346 - Aantal punten: 2.22 (9 stemmen)




Dit is een poll die werkt met mysql. Iedere bezoeker kan maar één keer stemmen, helaas heb ik er wel geen admin systeempje bij gemaakt. Hieronder een schema welke MySQL tabellen je moet aanmaken, onderaan kun je de images voor de poll downloaden. Veel plezier ;)


Mysql tabellen:

CREATE TABLE poll (
vraag varchar (255) not null
)

CREATE TABLE poll_ant (
id int(10) auto_increment not null,
antwoord varchar(255) not null
primary key(id)
)

CREATE TABLE poll_ip (
id int(10) auto_increment not null,
ip varchar(20) not null,
poll_ant varchar(255) not null
primary key(id)
)

Code:
PAGINA poll.php
  1. <?php
  2. include("db.php");
  3.  
  4. if (empty($_POST)){
  5. /* locatie waar bezoeker doorgestuurt word als de pagina
  6.   geen POST variabelen heeft ontvangen */
  7. header("Location: http://www.website.nl/");
  8. }else{
  9. $ip = $_SERVER['REMOTE_ADDR'];
  10. // vul bij [ipbloktable] de tabel in waar de geblokte ip's in staan
  11. $query = "SELECT * FROM [ipbloktable] WHERE ip='".$ip."'";
  12. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  13. $aantal = mysql_num_rows($result);
  14. if ($aantal >= 1){
  15. // wanneer de IP geblokt is naar dit adres doorsturen
  16. header("Location: http://www.website.nl/");
  17. }else{
  18. $poll = $_POST["poll"];
  19. $query = "INSERT INTO poll_ip (ip,poll_ant) VALUES ('$ip','$poll')";
  20. mysql_query($query) or die ("FOUT: ".mysql_error());
  21. }
  22. }
  23. ?>



PAGINA index.php of andere
  1. <?php
  2. include("db.php");
  3.  
  4. $ip = $_SERVER['REMOTE_ADDR'];
  5. $query = "SELECT * FROM poll_ip WHERE ip='".$ip."'";
  6. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  7. $aantal = mysql_num_rows($result);
  8. if ($aantal == 0){
  9. echo("<form action=\"poll.php\" method=\"post\">");
  10. $query = "SELECT vraag FROM poll";
  11. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  12. $rij = mysql_fetch_assoc($result);
  13. echo("<b>".$rij["vraag"]."</b><br>");
  14. $query = "SELECT * FROM poll_ant ORDER BY id ASC";
  15. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  16. $teller = 1;
  17. while ($rij = mysql_fetch_assoc($result)){
  18. echo("<input type=\"radio\" name=\"poll\" value=\"".$teller."\" style=\"border : 0px;\">".$rij["antwoord"]."<br>");
  19. $teller++;
  20. }
  21. echo("<input type=\"submit\" value=\"Stem!\"></form>");
  22. }else{
  23. $query = "SELECT * FROM poll_ant ORDER BY id ASC";
  24. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  25. $aantal = mysql_num_rows($result);
  26. $teller = 1;
  27. $query = "SELECT vraag FROM poll";
  28. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  29. $rij = mysql_fetch_assoc($result);
  30. echo("<b>".$rij["vraag"]."</b><br>");
  31. while ($teller <= $aantal){
  32. $query = "SELECT * FROM poll_ant WHERE id='".$teller."' ORDER BY id ASC";
  33. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  34. $rij = mysql_fetch_assoc($result);
  35. echo($rij["antwoord"]."<br><img src=\"poll_left.gif\" border=\"0\">");
  36. $query = "SELECT * FROM poll_ip";
  37. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  38. $totaal_hoeveel = mysql_num_rows($result);
  39. $query = "SELECT * FROM poll_ip WHERE poll_ant='".$teller."'";
  40. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  41. $ant_hoeveel = mysql_num_rows($result);
  42. if ($ant_hoeveel != 0){
  43. $nummer = $totaal_hoeveel / 100;
  44. $nummer = $ant_hoeveel / $nummer;
  45. }else{
  46. $nummer = 0;
  47. }
  48. $procent = substr($nummer, 0, 5);
  49. echo("<img src=\"poll_midden.gif\" border=\"0\" width=\"".$nummer."\" height=\"10\">");
  50. echo("<img src=\"poll_right.gif\" border=\"0\">&nbsp;".$procent."%<br>");
  51. $teller++;
  52. }
  53. $query = "SELECT * FROM poll_ip";
  54. $result = mysql_query($query) or die ("FOUT: ".mysql_error());
  55. $aantalstemmen = mysql_num_rows($result);
  56. echo("<br>Stemmen:&nbsp;".$aantalstemmen."<br>");
  57. }
  58. ?>
Download code! Download code (.txt)

Download dit script!
 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (15)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.035s