Mam taki kod:
<?php
$glosowanie = array ('1' => 'Cienka', 'Taka sobie', 'Niezła', 'Fajna', 'Super'); function glosowanie($odp, $glosowanie) {
$plik = fopen(\"wyniki.txt\", \"r+\"); $wiersz = fgets($plik, 255
); $wyniki = explode (\"|\", $wiersz); } else {
$plik = fopen (\"wyniki.txt\", \"w+\"); }
for ($i=0; $i<count($glosowanie); $i++) {
if ($odp == $i+1) { $wyniki[$i]++; }
fputs($plik, $wyniki[$i]); if ($i<count
($glosowanie)-1
) {fputs($plik, '|');} }
}
if (isset($_POST['wyslij'])) { glosowanie($_POST['odpowiedz'], $glosowanie);
}
?>
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"
\"http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"pl\" lang=\"pl\">
<head>
<meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-2\" />
<title>Tytuł strony</title>
</head>
<body>
<form action=\"<?php $_SERVER['PHP_SELF']; ?>\" method=\"post\">
<input type=\"radio\" name=\"odpowiedz\" value=\"1\" /> Cienka<br />
<input type=\"radio\" name=\"odpowiedz\" value=\"2\" /> Taka sobie<br />
<input type=\"radio\" name=\"odpowiedz\" value=\"3\" /> Niezła<br />
<input type=\"radio\" name=\"odpowiedz\" value=\"4\" /> Fajna<br />
<input type=\"radio\" name=\"odpowiedz\" value=\"5\" /> Super<br />
<input type=\"submit\" name=\"wyslij\" value=\"Glosuj!\" />
</form>
</body>
</html>
Ten skrypt jest odpowiedzialny za aktualizację wyników sondy. Dane przechowywane są w pliku wyniki.txt w formacie: 0|0|0|0|0. Problem w tym, że aktualizowane są wszystkie wyniki oprócz ostatniego. To znaczy, że jeśli na każdą możliwość ktoś oddał głos to wyniki będą wyglądały mniej więcej tak: 11|23|42|98|0 Ten ostatni wynik nie chce się aktualizować! Co jest nie tak?
Ten post edytował zbig13 24.03.2005, 17:31:42