Umfragescript (Array) Anpassungsprobleme

chris4life

Grünschnabel
Hallo liebe Leutz,

da ich nicht der größte in Sachen PHP bin, bin ich an einen Punkt gelangt, wo ich stecken bleibe. Mein derzeitiger Lösungsansatz wird euch vielleicht spartanisch vorkommen, aber ich habe bisher keinen anderen.

Es geht um ein Array.

PHP:
$auswahl = array (
	"Ja, ich komme!",
	"Nein, ich kann nicht!"
);
Die Werte dieses Arrays bekommen jeweils ein Radiobutton, weil ich eine kleine Umfrage bauen will.

Nun habe ich ein zweites Array erstellt
PHP:
$personen = array (
	"Stefan",
	"Jaspi",
	"Christoph",
	"Heinz"
);
$anzahl = count($auswahl);
Jede Person soll jeweils beide Werte aus dem oberen Array bekommen.

Für die Ausgabe habe ich folgenden Code verwendet.
PHP:
foreach ($auswahl as $key => $eintrag) {
	foreach ($personen as $key => $person){
		echo "<input type='radio' name='ergebnis' value='$key'>$person $eintrag<br>\n";
	}
}
Die Ausgabe erfolgt, aber wie kann ich es jetzt meinen Wünschen entsprechend anpassen?

Das ganze soll so aussehen. http://chris4life.de/umfrage/stefan.gif


Tatsächlich aber, sieht es so aus: http://chris4life.de/umfrage/stefan2.gif

Jede Person soll nur einmal aufgelistet werden und wenn möglich, dann soll die Buttonauswahl nebeneinander stehen, so wie im Screen eins.

Weiß jm.d Rat?

Vielen Dank im Voraus.
 
PHP:
<?php
  echo "<table>";
  foreach ($personen as $key => $person) {
      echo "<tr><td>" . $person . "</td>";
      foreach ($auswahl as $key => $eintrag) {
          echo "<td><input type='radio' name='ergebnis' value='$key'>$eintrag</td>\n";
      }
      echo "</tr>";
  }
  echo "</table>";
?>
 
hi queicherius,

vielen Dank, klappt super.

Weißt du auch, wie man nach dem submit, den einen Button ausgrauen kann?
Also man drückt "ja" und der Button "Nein" graut aus. Wenn möglich für eine Woche :)

IP Sperre usw. wäre zu aufwendig.

Wenn es hier eine einfachere Lösung gäbe, währe ich sehr dankbar.

Vielen Dank vorab.

Gruß
Chris
 
Hi,

erstmal müsstest du zu jedem Namen ein Datum vom Zeitpunkt des Abstimmens speichern. Denn ohne ein Datum kann man auch keine Woche draufrechnen um den Button auszugrauen.
 
Hi Loomis,

ich habe es jetzt folgendermaßen gemacht:

PHP:
if(isset ($_POST["ergebnis"])) {

setcookie("abgestimmt", "ja", date('l') == 'Wednesday');
}

D.h. bzw. ich hoffe zumindest, dass er das Voting für den jeweiligen Radiobutton bis zum darauffolgenden Mittwoch sperrt.

Nur wie kriege ich die Seite jetzt neu geladen, so dass das Voting von vorne beginnen kann?

Nochmal zu deiner Variante.
Wie speichere ich denn zu jedem Namen das Datum vom Zeitpunkt des Abstimmens?

Vielen Dank.
 
Zurück