Hejsa...
Jeg er meget grøn inden for php, og vil gerne lave et afstemnings system...
har søgt flere steder på nettet (netcoders.dk, udvikleren.dk og andre), men har ikke kunnet finde et simpelt vote system...
Håber der var nogen der kunne hjælpe mig med det, eller kender en side hvor det står rimeligt let forståeligt
Afstemnings systemet skal på ingen måde være avanceret, skal bare indeholde databasen samt afstemnings siden... Evt. også en admin side, hvor man kan redigere, oprette afstemninger...
har prøvet lidt med følgende db:
CREATE TABLE poll (
id int(11) NOT NULL auto_increment,
spm text NOT NULL,
svar_1 tinytext NOT NULL,
svar_2 tinytext NOT NULL,
svar_3 tinytext,
svar_4 tinytext,
svar_5 tinytext,
svar_6 tinytext,
svar_7 tinytext,
svar_8 tinytext,
stem_1 int(11),
stem_2 int(11),
stem_3 int(11),
stem_4 int(11),
stem_5 int(11),
stem_6 int(11),
stem_7 int(11),
stem_8 int(11),
PRIMARY KEY (id)
) TYPE=MyISAM;
# Bare en tilfældig afstemning, som skal tilføjes for at det hele skal tilføjes for at det hele skal virke ;)
INSERT INTO poll VALUES (1, 'har du en hund', 'ja', 'nej', NULL, NULL, NULL, NULL, NULL, NULL, 5, 1, NULL, NULL, NULL, NULL, NULL, NULL);
og følgende afstemnings side:
<?php
include('conf.php');
$db = mysql_connect("$db_host", "$db_bruger", "$db_password")or die(mysql_error());
mysql_select_db("$db_navn", $db)or die(mysql_error());
$info = mysql_query("SELECT id, spm, svar_1, svar_2, svar_3, svar_4, svar_5, svar_6, svar_7, svar_8, stem_1, stem_2, stem_3, stem_4, stem_5, stem_6, stem_7, stem_8 FROM poll ORDER BY id DESC") or die(mysql_error()); //WHERE id = '1' -> ORDER BY id DESC
$data = mysql_fetch_array($info);
# t = antal svarmuligheder
# stemmer_total = antal stemmer
$i = 2;
while ($data[$i] != "") {
$k = $i + 8;
$stemmer_total = $stemmer_total + $data[$k];
$i++;
$t = $i -2;
}
if ($stemt) {
$stemt_2 = $stemt + 9;
$data[$stemt_2]++;
$felt = "stem_" . "$stemt";
mysql_query("UPDATE poll SET $felt = '$data[$stemt_2]' WHERE id = '$data[0]'");
$mode = "har_stemt";
setcookie("mode", $mode,time()+2592000);
}
?>
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
<title>Afstemnngsscript</title>
</head>
<body>
<?php
if ($mode == "har_stemt") {
echo "<table border=\\"0\\" cellpadding=\\"0\\" cellspacing=\\"0\\" width=\\"$tabel\\">\\n";
echo "$spm_font$data[1]</font>";
for ($i = 1; $i <= $t; $i++) {
$k = $i + 9;
$r = $i +1;
$procent[$i] = $data[$k] / $stemmer_total * 100;
$kort_procent[$i] = round($procent[$i], 0);
$sojler = $kort_procent[$i] * $soejler_laengde;
echo "\\n<tr>";
echo "\\n<td>$svar_font$data[$r]</font>";
echo "\\n</td>";
echo "\\n<td bgcolor=\\"#ffffff\\"> <img border=\\"0\\" src=\\"$billede\\" width=\\"$sojler\\" height=\\"$soejler_hoejde\\"></td>";
echo "\\n</tr>";
}
echo "\\n</table>";
} else {
echo "$data[1]";
echo "\\n<form action=\\"$PHP_SELF\\" method=\\"post\\">";
for ($i = 1; $i <= $t; $i++) {
$f = $i + 1;
echo "\\n<input type=\\"radio\\" name=\\"stemt\\" value=\\"$i\\"> $data[$f]";
}
echo "\\n<input type=\\"submit\\" value=\\"Stem\\">";
echo "\\n</form>";
}
?>
</body>
</html>
Koden henter fint nok værdierne fra databasen, og indsætter dem som spørgsmål, men når man så trykker stem sker der intet... Siden hentes bare igen, uden nogen resultater, men med afstemningen igen... Jo ikke liiige det der er meningen...
En der kan finde fejlen og evt. hjælpe mig lidt på vej?
Mvh
Daniel Grau
[Redigeret d. 03/05-04 20:55:35 af Daniel Grau]