Anketa typu ANO/NE s graf. ukazatelem -
zdrojový kód
<?
//pro pripad ze jeste nebyl odeslan formular
if (File_Exists ("anketa.dat")):
$fp = FOpen("anketa.dat", "r");
$data_anketa = FRead ($fp, FileSize("anketa.dat"));
List($ano,$ne) = Explode("#", $data_anketa);
endif;
//formular jiz byl odeslan a bylo hlasovano ano nebo ne
//soubory jeste neexistuji
if ($send=="ano" && ($anketa == "ano" || $anketa == "ne")):
if (!File_Exists ("anketa.dat")):
$ano = "0";
$ne = "0";
//zapis do anketa.dat
$fp = FOpen("anketa.dat", "w");
FWrite ($fp, $ano ."#" . $ne);
FClose($fp);
endif;
//precte IP adresy
if (File_Exists("ip.dat")):
$fp = FOpen("ip.dat", "r");
$data_ip = FRead ($fp, FileSize("ip.dat"));
$IP = Explode("#", $data_ip); //ziska prozatimni vysledky hlasovani
FClose ($fp);
endif;
//zjisti zda je hlasovano podruhe z jednoho compu
for ($i=0;$i<Count($IP);$i++):
if ($REMOTE_ADDR == $IP[$i]):
$zapis = "ne";
endif;
endfor;
//je hlasovano podruhe
if ($zapis != "ne"):
if ($anketa == "ano"):
$ano += 1;
$data_anketa = $ano. "#" . $ne;
else:
$ne += 1;
$data_anketa = $ano. "#" . $ne;
endif;
$fp = FOpen ("anketa.dat", "w");
FWrite ($fp, $data_anketa);
FClose ($fp);
$fp = FOpen("ip.dat", "a");
FWrite ($fp, "#" . $REMOTE_ADDR);
FClose ($fp);
endif;
endif;
?>
<center>
Líbí se Vám tyto stránky?
</td></tr>
<tr><td>
<form method="post"><center>
Ano<input type="radio" name="anketa" value="ano"><i>(<?echo $ano?>)</i> Ne<input type="radio" name="anketa" value="ne"><i>(<?echo $ne?>)</i><br>
<?
if (File_Exists ("anketa.dat")):
$soucet = $ano + $ne;
$width1 = 115/$soucet*$ano;
$width2 = 115/$soucet*$ne;
?>
<img src="1.gif" width=<?echo $width1?> height="6" border="0" alt=""><img src="2.gif" width=<?echo $width2?> height="6" border="0" alt=""><br><br>
<?
endif;
//precte IP adresy
if (File_Exists("ip.dat")):
$fp = FOpen("ip.dat", "r");
$data_ip = FRead ($fp, FileSize("ip.dat"));
$IP = Explode("#", $data_ip); //ziska prozatimni vysledky hlasovani
FClose ($fp);
//zjisti zda je hlasovano podruhe z jednoho compu
for ($i=0;$i<Count($IP);$i++):
if ($REMOTE_ADDR == $IP[$i]):
$zapis = "ne";
endif;
endfor;
if ($zapis == "ne"):
echo "Již jste hlasoval.";
else:
echo '<center><input type="submit" value="Hlasovat"></center>';
endif;
else:
echo '<center><input type="submit" value="Hlasovat"></center>';
endif;
?>
<input type="hidden" name="send" value="ano">
</td></tr></form>
Vložil/Poslal/Autor: Admin
Funkčnost:
běží na straně serveru, nemělo by záležet na typu prohlížeče