Umfrage Script Fehler ö.Ö

Morgen!

Also ich habe mir mal ein Umfrage Script gemacht:

Es gibt 3 antwortmöglichkeiten(über radio buttons) und das funktioniert auch super, außer wenn ich die dritte Möglichkeit anklicke, dann überschreibt er den Wert einfach nicht, und ich weiß nicht wieso!

[php]

<? $vote_user = $_POST['vote_user']; $submit = $_POST['submit']; if(isset($submit)) { if(isset($vote_user)) { $datei = "req.txt"; $votes = file_get_contents($datei); $fp = fopen($datei, "r+"); $votes = explode(",", $votes); $votes[$vote_user]++; $votes = $votes[0].",".$votes[1].",".$votes[2]; fwrite($fp, $votes); fclose($fp); echo "Deine Stimme wurde gezählt!
Auswertung"; } else { echo "Du hast keine Option ausgewählt!"; } } else { echo " $frage
$a_1:
$a_2:
$a_3:
"; } ?>

[/php]

schnelltipp, es muss so heissen:
[php]
} else {
echo „Du hast keine Option ausgewählt!“;
echo "

$frage

$a_1:

$a_2:

$a_3:


";
}
[/php]du willst auf das setzen der auswahl (radios) prüfen, nicht, ob der ok button gedrückt wurde.
so wie du das codest, wird nach dem absenden auch dann, wenn keine auswahl getroffen wurde, der auswahl-teil NICHT mehr angezeigt, da er abhängig vom submit button ist.

ähm, das hat schon seinen Grund wieso ich das so gemacht habe!
Hast du das Script überhaupt’ mal ausprobiert?
Und geholfen hast du mir mit deinem Post nicht :frowning:

Mit etwas Freundlichkeit kriegt man sicher mehr Antworten!
Und wenn kein Link da ist, kann man nichts ausprobieren.

In Deinem Code ist ein Klammnerfehler und ein else zuviel. Oder es fehlt ein if. Oder wasauchimmer.

} else {
    echo "Du hast keine Option ausgewählt!";
[b]}[/b]
} else {

Ich finde nicht das ich ihrgendwie frech geantwortet habe…

Zu deiner Aussage: Da ist weder ein if zu wenig noch ein else zuviel, es das script funktioniert einwandfrei bis auf das der dritte Stand nicht erhöht wird!

Stimmt. Der Code oben war falsch eingerückt, deswegen habe ich da was übersehen.

Ich kann nur empfehlen, Dir in jeder Zeile (wo Du den Dateiinhalt liest und neu schreibst) den Inhalt von $votes ausgeben zu lassen, um zu sehen, wie der Wert sich verändert.

Wie sieht der Inhalt der Datei aus? Das ist für uns nicht ersichtlich. Möglicherweise fehlt das letzte Komma.

Gib Dir bei sowas immer alle Variableninhalt aus, ob die überhaupt den Wert haben, den Du annimmst, $vote_user z.B.

Nochwas: $votes[2] könnte evtl. ein Newline enthalten, also z.B. „3\n“, und was „3\n“++ für ein Ergebnis liefert, weiß ich nicht. Überprüfen!

Merkwürdig,
ich habe per echo einfach mal $votes[2]; ausgegeben, danach nochmal gecheckt ob es klappt und tatsächlich es geht ö.Ö