Umfrage modifizieren

  • Themenstarter Themenstarter Syras
  • Beginndatum Beginndatum
S

Syras

Hallo.
Ich habe hier einen Umfragescript, kenne mich aber nicht genügend mit PHP aus, um Änderungen vorzunehmen.

Sie basiert auf einer Text Datei
Code:
	<?php
$datei = file("umfrage.txt");
$frage = $datei[0];
$i = 1;
while(substr($datei[$i], 0, 4) != "----") {
  $option[$i] = $datei[$i];
  $i++;
  if($i > count($datei))
    die("Fehler in der Umfrage Datei: Konnte Trennzeichen \"----\" nicht finden!");
}
$summe = 0;
for($i = 1; $i <= count($option); $i++) {
  $stimmen[$i] = $datei[$i + count($option) + 1];
  $summe += $stimmen[$i];
}
if($_POST['action'] == "vote") {
  if($_COOKIE['abgestimmt'] == "ja")
    die("Du hast bereits innerhalb der letzten 24 Stunden an dieser Umfrage teilgenommen.<br><a href=\"".$PHP_SELF."?action=ergebnis\">Zum Ergebnis</a>");
  setcookie("abgestimmt", "ja", (time() + 24*60*60*60));
  $update =  fopen("umfrage.txt", "w");
  $datei[$_POST['wahl'] + count($option) + 1] = ($stimmen[$_POST['wahl']] + 1)."\r\n";
  $text = implode("", $datei);
  fwrite($update, $text);
  fclose($update);
  die("Deine Stimme wurde gezählt.<br><a href=\"".$PHP_SELF."?action=ergebnis\">Zum Ergebnis</a>");
} elseif($_GET['action'] == "ergebnis") {
  if($summe != 0) {
?>
<table cellsapcin="0" cellpadding="0" border="0">
<tr>
<td colspan="3" style="text-align: center;"><b><?= $frage ?></b></td>
</tr>
<?php
    foreach($option as $nr => $opt) {
      $prozent = round($stimmen[$nr]/$summe*100, 2);
?>
<tr>
<td><b><?= trim($option[$nr]) ?></b></td>
<td>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td style="background: #F50000; height: 10px; width: <?= ceil($prozent) ?>px; padding: 0px; border: 1px solid #000000; border-right: 0px;"></td>
<td style="background: #000000; height: 10px; width: <?= floor(100 - $prozent) ?>px; padding: 0px; border: 1px solid #000000; border-left: 0px;"></td>
</tr>
</table>
</td>
<td><?= $stimmen[$nr] ?> Stimmen (<?= $prozent ?>%)</td>
</tr>
<?php
    }
?>
</table>
<?php
  } else {
    die("Es wurde noch nicht abgestimmt.<br><a href=\"".$PHP_SELF."\">Jetzt abstimmen</a>");
  }
} else {
?>
<form method="post" action="<?= $PHP_SELF ?>">
<table cellsapcin="0" cellpadding="0" border="0">
<tr>
<td colspan="2" style="text-align: center;"><b><?= $frage ?></b></td>
</tr>
<?php
  foreach($option as $nr => $opt) {
?>
<tr>
<td style="text-align: right;"><input type="radio" name="wahl" value="<?= $nr ?>"<?php
if($checked != true) echo " checked";
$checked = true;
?>></td>
<td style="text-align: left;"><?= trim($opt) ?></td>
</tr>
<?php
  }
?>
<tr>
<td colspan="2" style="text-align: center;"><input type="submit" value="Abstimmen"></td>
</tr>
<tr>
<td colspan="2" style="text-align: center;"><a href="<?= $PHP_SELF ?>?action=ergebnis">Ergebnisse</a></td>
</tr>
</table>
<input type="hidden" value="vote" name="action">
</form>
<?php
}
?>



Hier die Textdatei

Code:
001
002
003
004
005
006
007
008
	Frage
Antwort 1
Antwort 2
Antwort 3
----
Anzahl der Leute, die für Antwort 1 gestimmt haben
""
""



So, wenn ich nun abstimme, dann steht im Fenster "Zum Ergebniss"

Ich hätte es aber gerne so, dass man durch diesen Link ein JAvaScript Fenster mit den Ergebnissen öffnet.

Wenn man die Seite aktualisiert, dann bekommt man nicht das Ergebniss zu sehen, sondern erneut die Umfrage...


Wie kann ich diese Sachen umstellen?
 
Zurück