PRO poll !!!
Auteur: sayanora - 25 mei 2005 - 20:24 - Gekeurd door: Mokka - Hits: 27424 - Aantal punten: 4.19 (27 stemmen)
Over PRO PoLL :
- Adminfunctie
- Archieffunctie
- Makkelijke installatie middels instal.php
- Radios worden automatisch gemaakt aan de hand van het aantal antwoorden, maw er zijn erg veel antwoorden mogelijk.
- Ip logging zodat er per poll maar 1x gestemd kan worden
- Grafische en procentuele indicator
- Polls makkelijk te herkennen aan weergegeven nummer en bijhorende datum
Installatie:
- Download of kopier de bestanden naar een map (bijv. poll)
- Verander in database.php de gegevens zodat ze op jouw db van kracht zijn.
- Open de browser en ga naar .../poll/instal.php en de SQL tabellen worden weggeschreven Let op! als de tabellen poll en/of votes al bestaan worden deze overschreven!
- Met de browser nog open ga je naar .../poll/admin.php en type je de vraag en de antwoorden gescheiden door een comma.
- Je poll is nu operationeel!
|
Code: |
<?
# Filename : admin.php
# Author : Sander Geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
# Include database classfile
include("database.php");
# Class new_poll
class new_poll
{
function showAdmin()
{
$admin .= "<form method=\"POST\" ation=\"" . $_SERVER['PHP_SELF'] . "\">";
$admin .= "Vraag :<br />";
$admin .= "<input type=\"text\" name=\"q\" maxlength=\"255\" /><br />";
$admin .= "Antwoorden : (gescheiden door een komma en zonder spaties)<br />";
$admin .= "<input type=\"text\" name=\"a\" /><br />";
$admin .= "<input type=\"submit\" name=\"add\" value=\"Voeg toe!\" />";
$admin .= "</form>";
return $admin;
}
function makeScores($num)
{
for($i=1;$i<=$num;$i++)
{
if($i == $num)
{
$scores .= "0";
}
else
{
$scores .= "0,";
}
}
return $scores;
}
}
# Check if user is Admin
# Hier kun je je eigen log systeem in verwerken
$admin = 1;
if($admin)
{
# Show options
$np = new new_poll;
$db = new database;
# Check if form is submitted
if(!$_POST['add'])
{
# Show admin
echo $np->showAdmin();
}
else
{
# Set some vars
$a = $_POST['a'];
$total = count(explode(",", $a));
$q = htmlentities($_POST['q']);
$a = $_POST['a'];
# calc null values
$null = $np->makeScores($total);
# Insert new poll
$sql1 = "INSERT INTO `poll` SET `poll_stelling` = '" . $q . "', `poll_keuzes` = '" . $a . "', `poll_scores` = '" . $null . "', `poll_datum` = '" . time() . "'";
# Reset votes
$sql2 = "DELETE FROM `votes`";
$res1 = $db->execute($sql1);
$res2 = $db->execute($sql2);
echo "Nieuwe poll toegevoegd!";
}
}
else
{
# User isnt an admin
die("INVALID ACCESLEVEL!");
}
?>
<? # Filename : admin.php # Author : Sander Geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 # Include database classfile include("database.php"); # Class new_poll class new_poll { function showAdmin() { $admin .= "<form method=\"POST\" ation=\"" . $_SERVER['PHP_SELF'] . "\">"; $admin .= "Vraag :<br />"; $admin .= "<input type=\"text\" name=\"q\" maxlength=\"255\" /><br />"; $admin .= "Antwoorden : (gescheiden door een komma en zonder spaties)<br />"; $admin .= "<input type=\"text\" name=\"a\" /><br />"; $admin .= "<input type=\"submit\" name=\"add\" value=\"Voeg toe!\" />"; $admin .= "</form>"; return $admin; } function makeScores($num) { for($i=1;$i<=$num;$i++) { if($i == $num) { $scores .= "0"; } else { $scores .= "0,"; } } return $scores; } } # Check if user is Admin # Hier kun je je eigen log systeem in verwerken $admin = 1; if($admin) { # Show options $np = new new_poll; $db = new database; # Check if form is submitted if(!$_POST['add']) { # Show admin } else { # Set some vars $a = $_POST['a']; $a = $_POST['a']; # calc null values $null = $np->makeScores($total); # Insert new poll $sql1 = "INSERT INTO `poll` SET `poll_stelling` = '" . $q . "', `poll_keuzes` = '" . $a . "', `poll_scores` = '" . $null . "', `poll_datum` = '" . time() . "'"; # Reset votes $sql2 = "DELETE FROM `votes`"; $res1 = $db->execute($sql1); $res2 = $db->execute($sql2); echo "Nieuwe poll toegevoegd!"; } } else { # User isnt an admin die("INVALID ACCESLEVEL!"); } ?>
<?
# Filename : archives.php
# Author : Sander Geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
# Include database classfile
include("database.php");
# Include poll classfile
include("poll.php");
# Archives class
class archive
{
function showAll()
{
# Run database class
$db = new database;
# Get the number of rows
$sql = "SELECT * FROM `poll` ORDER BY `poll_id` DESC";
$aantal = $db->num_rows($sql);
$archives .= "<b>Er zijn " . $aantal . " polls in het archief!</b><br />";
# Get all rowvalues
$data = $db->get_array($sql);
# Set paragraph start
$archives .= "<p>";
# Loop to make the URLs
for($i=0; $i<$aantal; $i++)
$archives .= "<a href=\"" . $_SERVER['PHP_SELF'] . "?ArchID=" . $data[$i]['poll_id'] . "\">" . date("j-n-Y", $data[$i]['poll_datum']) . "</a><br />";
# End paragraph
$archives .= "</p>";
# Link back to mainpage
$archives .= "<p><a href=\"index.php\">Terug</a>";
return $archives;
}
function showSingle($id)
{
# Run poll class
$poll = new poll;
# Get the results
$single = $poll->archResults($id);
return $single;
}
}
# Run archive class
$ac = new archive;
# Check for $_GET data
if($_GET['ArchID'] && is_numeric($_GET['ArchID']))
echo $ac->showSingle($_GET['ArchID']);
else
echo $ac->showAll();
?>
<? # Filename : archives.php # Author : Sander Geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 # Include database classfile include("database.php"); # Include poll classfile include("poll.php"); # Archives class class archive { function showAll() { # Run database class $db = new database; # Get the number of rows $sql = "SELECT * FROM `poll` ORDER BY `poll_id` DESC"; $aantal = $db->num_rows($sql); $archives .= "<b>Er zijn " . $aantal . " polls in het archief!</b><br />"; # Get all rowvalues $data = $db->get_array($sql); # Set paragraph start $archives .= "<p>"; # Loop to make the URLs for($i=0; $i<$aantal; $i++) $archives .= "<a href=\"" . $_SERVER['PHP_SELF'] . "?ArchID=" . $data[$i]['poll_id'] . "\">" . date("j-n-Y", $data[$i]['poll_datum']) . "</a><br />"; # End paragraph $archives .= "</p>"; # Link back to mainpage $archives .= "<p><a href=\"index.php\">Terug</a>"; return $archives; } function showSingle($id) { # Run poll class $poll = new poll; # Get the results $single = $poll->archResults($id); return $single; } } # Run archive class $ac = new archive; # Check for $_GET data if($_GET['ArchID'] && is_numeric($_GET['ArchID'])) echo $ac->showSingle($_GET['ArchID']); else ?>
<?
# Filename : database.php
# Author : Sander Geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
class database
{
# Database vars
var $user = "User";
var $pass = "Pass";
var $host = "localhost";
var $name = "DBname";
# Functie die mysql_num_rows teruggeeft
function num_rows($sql)
{
$this->connect();
$res = mysql_query($sql);
$aantal = mysql_num_rows($res);
mysql_close();
return $aantal;
}
# Functie de mysql_fetch_array teruggeeft
function get_array($sql)
{
$this->connect();
$res = mysql_query($sql);
while($data = mysql_fetch_array($res))
$row[] = $data;
mysql_close();
return $row;
}
# Zelfde als hierboven maar dan 1 row
function get_single($sql)
{
$this->connect();
$res = mysql_query($sql);
$data = mysql_fetch_array($res);
mysql_close();
return $data;
}
# Functie die een normale query runt
function execute($sql)
{
$this->connect();
$res = mysql_query($sql);
mysql_close();
return $res;
}
# Functie die de database connectie maakt
function connect()
{
return mysql_select_db($this->name, mysql_connect($this->host, $this->user, $this->pass));
}
}
?>
<? # Filename : database.php # Author : Sander Geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 class database { # Database vars var $user = "User"; var $pass = "Pass"; var $host = "localhost"; var $name = "DBname"; # Functie die mysql_num_rows teruggeeft function num_rows($sql) { $this->connect(); return $aantal; } # Functie de mysql_fetch_array teruggeeft function get_array($sql) { $this->connect(); $row[] = $data; return $row; } # Zelfde als hierboven maar dan 1 row function get_single($sql) { $this->connect(); return $data; } # Functie die een normale query runt function execute($sql) { $this->connect(); return $res; } # Functie die de database connectie maakt function connect() { } } ?>
<?
# Filename : index.php
# Author : Sander geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
# Include database classfile
include("database.php");
# Include poll classfile
include("poll.php");
# Run database class
$db = new database;
# Set query to see if voted already
$ip = $_SERVER['REMOTE_ADDR'];
$sql = "SELECT * FROM `votes` WHERE `vote_ip` = '" . $ip . "'";
# Run poll class
$poll = new poll;
# If a match is found show results only
if($db->num_rows($sql) == 1)
{
# Show results
echo $poll->showResults();
}
else
{
# Check if form submitted
if(!$_POST['vote'])
{
# Show form
echo $poll->showOptions();
}
else
{
# Add data to database
# Check for a value
if(!$_POST['poll'])
{
# No option selected
# Show poll again
echo $poll->showOptions();
}
else
{
# A radio is checked
# Update votes
$poll->updateVotes($_POST['poll']);
# Show results
echo $poll->showResults();
}
}
}
?>
<? # Filename : index.php # Author : Sander geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 # Include database classfile include("database.php"); # Include poll classfile include("poll.php"); # Run database class $db = new database; # Set query to see if voted already $ip = $_SERVER['REMOTE_ADDR']; $sql = "SELECT * FROM `votes` WHERE `vote_ip` = '" . $ip . "'"; # Run poll class $poll = new poll; # If a match is found show results only if($db->num_rows($sql) == 1) { # Show results echo $poll->showResults(); } else { # Check if form submitted if(!$_POST['vote']) { # Show form echo $poll->showOptions(); } else { # Add data to database # Check for a value if(!$_POST['poll']) { # No option selected # Show poll again echo $poll->showOptions(); } else { # A radio is checked # Update votes $poll->updateVotes($_POST['poll']); # Show results echo $poll->showResults(); } } } ?>
<?
# Filename : install.php
# Author : Sander Geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
# Include database classfile
include("database.php");
# Instal class
class install
{
# Instal function
function insPoll()
{
$sql1 .= "DROP TABLE IF EXISTS `poll`;";
$sql2 .= "CREATE TABLE `poll` (";
$sql2 .= "`poll_id` int(11) primary key auto_increment,";
$sql2 .= "`poll_stelling` varchar(255) not null default '',";
$sql2 .= "`poll_keuzes` longtext not null default '',";
$sql2 .= "`poll_scores` longtext not null default '',";
$sql2 .= "`poll_datum` int(20) not null default '0'";
$sql2 .= ") TYPE=MyISAM;";
$sql3 .= "DROP TABLE IF EXISTS `votes`;";
$sql4 .= "CREATE TABLE `votes` (";
$sql4 .= "`vote_id` int(11) primary key auto_increment,";
$sql4 .= "`vote_ip` varchar(16) not null default '',";
$sql4 .= "`vote_datum` int(20) not null default '0'";
$sql4 .= ") TYPE=MyISAM;";
# Run db class
$db = new database;
# Execute
$res1 = $db->execute($sql1);
$res2 = $db->execute($sql2);
$res3 = $db->execute($sql3);
$res4 = $db->execute($sql4);
if($res2 && $res4)
{
$install .= "<b>Succesvol geinstalleerd!</b><br />";
$install .= "<a href=\"admin.php\">Klik hier om een vraag in te stellen!</a>";
}
else
{
$install .= "<b>Er is iets fout gegegaan probeer het opnieuw!</b><br />";
$install .= $this->insMenu();
$install .= "<p><b>Is dit al de zoveelste keer dat het mislukt?</b><br />";
$install .= "Voer dan handmatig deze code in in je db:<br />";
$install .= $sql2 . $sql4;
}
return $install;
}
# Show menu
function insMenu()
{
$menu .= "<p><b>SMART PoLL 0.7 INSTALLER</b><br />";
$menu .= "<u>LeT oP!</u> zodra je op <i>install</i> klikt zullen de tabellen genaamd<br />";
$menu .= "<i>'poll'</i> en <i>'votes'</i>, mits ze al bestaan, overschreven worden!<br />";
$menu .= "<a href=\"" . $_SERVER['PHP_SELF'] . "?ins=1\">INSTALL SMART PoLL 0.7 NOW!</a></p>";
return $menu;
}
}
# Run install class
$ins = new install;
# Check for $_GET data
if($_GET['ins'] && is_numeric($_GET['ins']))
echo $ins->insPoll();
else
echo $ins->insMenu();
?>
<? # Filename : install.php # Author : Sander Geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 # Include database classfile include("database.php"); # Instal class class install { # Instal function function insPoll() { $sql1 .= "DROP TABLE IF EXISTS `poll`;"; $sql2 .= "CREATE TABLE `poll` ("; $sql2 .= "`poll_id` int(11) primary key auto_increment,"; $sql2 .= "`poll_stelling` varchar(255) not null default '',"; $sql2 .= "`poll_keuzes` longtext not null default '',"; $sql2 .= "`poll_scores` longtext not null default '',"; $sql2 .= "`poll_datum` int(20) not null default '0'"; $sql2 .= ") TYPE=MyISAM;"; $sql3 .= "DROP TABLE IF EXISTS `votes`;"; $sql4 .= "CREATE TABLE `votes` ("; $sql4 .= "`vote_id` int(11) primary key auto_increment,"; $sql4 .= "`vote_ip` varchar(16) not null default '',"; $sql4 .= "`vote_datum` int(20) not null default '0'"; $sql4 .= ") TYPE=MyISAM;"; # Run db class $db = new database; # Execute $res1 = $db->execute($sql1); $res2 = $db->execute($sql2); $res3 = $db->execute($sql3); $res4 = $db->execute($sql4); if($res2 && $res4) { $install .= "<b>Succesvol geinstalleerd!</b><br />"; $install .= "<a href=\"admin.php\">Klik hier om een vraag in te stellen!</a>"; } else { $install .= "<b>Er is iets fout gegegaan probeer het opnieuw!</b><br />"; $install .= $this->insMenu(); $install .= "<p><b>Is dit al de zoveelste keer dat het mislukt?</b><br />"; $install .= "Voer dan handmatig deze code in in je db:<br />"; $install .= $sql2 . $sql4; } return $install; } # Show menu function insMenu() { $menu .= "<p><b>SMART PoLL 0.7 INSTALLER</b><br />"; $menu .= "<u>LeT oP!</u> zodra je op <i>install</i> klikt zullen de tabellen genaamd<br />"; $menu .= "<i>'poll'</i> en <i>'votes'</i>, mits ze al bestaan, overschreven worden!<br />"; $menu .= "<a href=\"" . $_SERVER['PHP_SELF'] . "?ins=1\">INSTALL SMART PoLL 0.7 NOW!</a></p>"; return $menu; } } # Run install class $ins = new install; # Check for $_GET data else ?>
<?
# Filename : poll.php
# Author : Sander Geerts
# Projectname : PRO PoLL
# Projectversion : 0.7.1
# Releasedate : 16-08-2004
class poll
{
# Show options function
function showOptions()
{
# Get newest poll
$data = $this->getPoll();
# Split options
$options = explode(",", $data['poll_keuzes']);
# Count options for loop
$aant = count($options)-1;
$poll .= "<b>" . $data['poll_stelling'] . "</b><br />";
$poll .= "<form method=\"POST\" action=\"" . $_SERVER['PHP_SELF'] . "\">";
# Loop and make input radios
for($i = 0; $i <= $aant; $i++)
{
$j = $i+1;
$poll .= "<input type=\"radio\" value=\"" . $j . "\" name=\"poll\" />" . $options[$i] . "<br />";
}
# End form
$poll .= "<input type=\"submit\" name=\"vote\" value=\"Stem!\" />";
$poll .= "</form>";
# Show pollid no. and poll date
$poll .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']);
# Show link to archives
$poll .= "<p><a href=\"archives.php\">Bekijk archief!</a>";
return $poll;
}
function updateVotes($vote)
{
# Get newest poll
$data = $this->getPoll();
# Split the vote scores
$stemmen = explode(",", $data['poll_scores']);
# add one to the selected option
$vote--;
(int) $stemmen[$vote]++;
# Remake the data
$stem = implode(",", $stemmen);
# Add to database
$sql1 = "UPDATE `poll` SET `poll_scores` = '" . $stem . "' WHERE `poll_id` = '" . $data['poll_id'] . "'";
$ip = $_SERVER['REMOTE_ADDR'];
$sql2 = "INSERT INTO `votes` SET `vote_ip` = '" . $ip . "', `vote_datum` = '" . time() . "'";
# Run db class
$db = new database;
$res1 = $db->execute($sql1);
$res2 = $db->execute($sql2);
}
function getPoll()
{
# Select the newest poll
$sql = "SELECT * FROM `poll` ORDER BY `poll_id` DESC LIMIT 1";
# Run db class
$db = new database;
# Get array
$data = $db->get_single($sql);
return $data;
}
function showResults()
{
# Get data
$data = $this->getPoll();
# Split options and scores
$options = explode(",", $data['poll_keuzes']);
$scores = explode(",", $data['poll_scores']);
$option = count($options)-1;
# Count the votes
$votes = array_sum($scores);
# Show total votes
$results .= "<b>" . $data['poll_stelling'] . "</b><br />";
$results .= "Totaal aantal stemmen: " . $votes . "<br />";
$results .= "<p>";
# Loop through results
for($i = 0;$i <= $option; $i++)
{
$results .= $options[$i] . "<br />";
$results .= "<img src=\"indicator.png\" width=\"" . $this->imgPXL($votes, $scores[$i]) . "\" height=\"15\" />" . $this->imgPXL($votes, $scores[$i]) . "%";
$results .= "<br />";
}
$results .= "</p>";
# Show pollid no. and poll date
$results .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']);
# Show link to archives
$results .= "<p><a href=\"archives.php\">Bekijk archief!</a>";
return $results;
}
function archResults($id)
{
# Get data
$data = $this->archPoll($id);
# Split options and scores
$options = explode(",", $data['poll_keuzes']);
$scores = explode(",", $data['poll_scores']);
$option = count($options)-1;
# Count the votes
$votes = array_sum($scores);
# Show total votes
$results .= "<b>" . $data['poll_stelling'] . "</b><br />";
$results .= "Totaal aantal stemmen: " . $votes . "<br />";
$results .= "<p>";
# Loop through results
for($i = 0;$i <= $option; $i++)
{
$results .= $options[$i] . "<br />";
$results .= "<img src=\"indicator.png\" width=\"" . $this->imgPXL($votes, $scores[$i]) . "\" height=\"15\" />" . $this->imgPXL($votes, $scores[$i]) . "%";
$results .= "<br />";
}
$results .= "</p>";
# Show pollid no. and poll date
$results .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']);
# Show link to archives
$results .= "<p><a href=\"archives.php\">Terug!</a>";
return $results;
}
function archPoll($id)
{
# Select the newest poll
$sql = "SELECT * FROM `poll` WHERE `poll_id` = '" . $id . "' ORDER BY `poll_id` DESC LIMIT 1";
# Run db class
$db = new database;
# Get array
$data = $db->get_single($sql);
return $data;
}
# Calculate indicator size
function imgPXL($tot, $opt)
{
$pro = $tot / 100;
$num = $opt / $pro;
return (int) $num;
}
}
?>
<? # Filename : poll.php # Author : Sander Geerts # Projectname : PRO PoLL # Projectversion : 0.7.1 # Releasedate : 16-08-2004 class poll { # Show options function function showOptions() { # Get newest poll $data = $this->getPoll(); # Split options $options = explode(",", $data['poll_keuzes']); # Count options for loop $aant = count($options)-1; $poll .= "<b>" . $data['poll_stelling'] . "</b><br />"; $poll .= "<form method=\"POST\" action=\"" . $_SERVER['PHP_SELF'] . "\">"; # Loop and make input radios for($i = 0; $i <= $aant; $i++) { $j = $i+1; $poll .= "<input type=\"radio\" value=\"" . $j . "\" name=\"poll\" />" . $options[$i] . "<br />"; } # End form $poll .= "<input type=\"submit\" name=\"vote\" value=\"Stem!\" />"; $poll .= "</form>"; # Show pollid no. and poll date $poll .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']); # Show link to archives $poll .= "<p><a href=\"archives.php\">Bekijk archief!</a>"; return $poll; } function updateVotes($vote) { # Get newest poll $data = $this->getPoll(); # Split the vote scores $stemmen = explode(",", $data['poll_scores']); # add one to the selected option $vote--; (int) $stemmen[$vote]++; # Remake the data # Add to database $sql1 = "UPDATE `poll` SET `poll_scores` = '" . $stem . "' WHERE `poll_id` = '" . $data['poll_id'] . "'"; $ip = $_SERVER['REMOTE_ADDR']; $sql2 = "INSERT INTO `votes` SET `vote_ip` = '" . $ip . "', `vote_datum` = '" . time() . "'"; # Run db class $db = new database; $res1 = $db->execute($sql1); $res2 = $db->execute($sql2); } function getPoll() { # Select the newest poll $sql = "SELECT * FROM `poll` ORDER BY `poll_id` DESC LIMIT 1"; # Run db class $db = new database; # Get array $data = $db->get_single($sql); return $data; } function showResults() { # Get data $data = $this->getPoll(); # Split options and scores $options = explode(",", $data['poll_keuzes']); $scores = explode(",", $data['poll_scores']); $option = count($options)-1; # Count the votes # Show total votes $results .= "<b>" . $data['poll_stelling'] . "</b><br />"; $results .= "Totaal aantal stemmen: " . $votes . "<br />"; $results .= "<p>"; # Loop through results for($i = 0;$i <= $option; $i++) { $results .= $options[$i] . "<br />"; $results .= "<img src=\"indicator.png\" width=\"" . $this->imgPXL($votes, $scores[$i]) . "\" height=\"15\" />" . $this->imgPXL($votes, $scores[$i]) . "%"; $results .= "<br />"; } $results .= "</p>"; # Show pollid no. and poll date $results .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']); # Show link to archives $results .= "<p><a href=\"archives.php\">Bekijk archief!</a>"; return $results; } function archResults($id) { # Get data $data = $this->archPoll($id); # Split options and scores $options = explode(",", $data['poll_keuzes']); $scores = explode(",", $data['poll_scores']); $option = count($options)-1; # Count the votes # Show total votes $results .= "<b>" . $data['poll_stelling'] . "</b><br />"; $results .= "Totaal aantal stemmen: " . $votes . "<br />"; $results .= "<p>"; # Loop through results for($i = 0;$i <= $option; $i++) { $results .= $options[$i] . "<br />"; $results .= "<img src=\"indicator.png\" width=\"" . $this->imgPXL($votes, $scores[$i]) . "\" height=\"15\" />" . $this->imgPXL($votes, $scores[$i]) . "%"; $results .= "<br />"; } $results .= "</p>"; # Show pollid no. and poll date $results .= "<p>PollID: " . $data['poll_id'] . " - PollDatum: " . date("j-n-Y", $data['poll_datum']); # Show link to archives $results .= "<p><a href=\"archives.php\">Terug!</a>"; return $results; } function archPoll($id) { # Select the newest poll $sql = "SELECT * FROM `poll` WHERE `poll_id` = '" . $id . "' ORDER BY `poll_id` DESC LIMIT 1"; # Run db class $db = new database; # Get array $data = $db->get_single($sql); return $data; } # Calculate indicator size function imgPXL($tot, $opt) { $pro = $tot / 100; $num = $opt / $pro; return (int) $num; } } ?>
veel geluk ermee Download code (.txt)
|
|
Stemmen |
Niet ingelogd. |
|