Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: PHP: Viikon kysymys

Sivun loppuun

Tulilintu [16.06.2002 12:38:12]

#

Tässä nyt on tällänen viikonkysymys scripti. Luo tiedostot ip.dat ja votes.dat ja anna niille 666 oikat.

En jaksanu kommentoida koodia ollenkaan.

viikonkys.php

<html>
<head>
	<title>Viikon kysymys</title>
</head>

<body>
<?php

$Week = Date("W.Y");
$File = File("poll.dat");
$Err = 1;
for ($i = 0; $i < count($File); $i++)
{
if (trim($File[$i]) == $Week)
{
$i++;
echo $File[$i]."<P>";
$i++;
$a = $i + $File[$i] + 1 ;
$b = $File[$i];
$c = "CHECKED";
echo "<form action=\"vastaa.php\" method=\"post\">";
   for ($i++; $i < $a; $i++)
   	   {
	   $ii++;
	   echo "<input name=\"Valinta\" type=\"radio\" value=\"". $ii ."\" ". $c .">". $File[$i] ."<BR>";
	   $c = "";
	   }
	   $Err = 0;
	   echo "<input name=\"Maara\" type=\"hidden\" value=\"". $b ."\">";
	   echo "<input name=\"Viikko\" type=\"hidden\" value=\"". $Week ."\">";
   	   echo "<input name=\"Vastaa\" type=\"hidden\" value=\"1\">";
	   echo "<input type=\"submit\" Value=\"[ V A S T A A ]\">";
}
}
if ($Err == 1)
   {
   Echo "Tälle viikolle ei ole kysymystä";
   }

?>
</form>
</body>
</html>

vastaa.php

<html>
<head>
	<title>Viikon kysymys</title>
</head>

<body>

<?PHP
$Valinta = $HTTP_POST_VARS["Valinta"];
$Maara = $HTTP_POST_VARS["Maara"];
$Week = $HTTP_POST_VARS["Viikko"];
$Wrap = chr(13).chr(10);
$File = File("votes.dat");
$IP = File("ip.dat");
$Err = 1;

if (trim($IP[0]) == $Week)
    {
	For($i = 1; $i < Count($IP); $i++)
		{
		if(trim($IP[$i]) == $REMOTE_ADDR)
			{
			$Err = 0;
			}
		}
	}
Else
	{
	$IP2 = fopen("ip.dat", "w");
	fwrite($IP2, $Week);
	fclose($IP2);
	}
if ($Err == 1)
    {
	$Err = 1;
	$IP2 = fopen("ip.dat", "a");
	fwrite($IP2, $Wrap . $REMOTE_ADDR);
	fclose($IP2);
	if (Count($File) != 0)
        {
		for($i = 0; $i < Count($File); $i++)
	    	{
			if (Trim($File[$i]) == $Week)
		        {
				$Err = 0;
				$File[$i + $Valinta] = $File[$i + $Valinta] + 1 . $Wrap;
				}
			}
			if ($Err == 1)
	    	   {
			   $i = Count($File) + 1;
			   $File[$i] = "##" . $Wrap;
			   $i++;
			   $File[$i] = $Week . $Wrap;
			   $i++;
			   $a = $Maara + $i + 1;
			   for($i; $i < $a; $i++)
			   	   {
				   $ii++;
				   if ($ii == $Valinta)
		           {
			   $File[$i] = 1 . $Wrap;
			   }
			else
			   {
			   $File[$i] = 0 . $Wrap;
			   }
			}
		}
	}
else
	{
	$File[0] = "##" . $Wrap;
	$File[1] = $Week . $Wrap;
	$a = $Maara + 2;
	for($i = 2; $i < $a; $i++)
		{
		$ii++;
		if ($ii == $Valinta)
		    {
			$File[$i] = 1 . $Wrap;
			}
		else
			{
			$File[$i] = 0 . $Wrap;
			}
		}
	}
	$File2 = fopen ("votes.dat", "w") or die ("Ei oikeuksia! Ilmoita webmasterille!");
	for($i = 0; $i < Count($File); $i++)
		{
		fwrite($File2, $File[$i]);
		}
	fclose($File2);
	}

//Näytä
$File2 = File("poll.dat");

for($i = 0; $i < count($File2); $i++)
	{
	if (trim($File2[$i]) == $Week)
    	{
		$i++;
		$Kysymys = $File2[$i];
		$i++;
		$Maara = $File2[$i];
		$k = $i + 1;
	 	}
	}
for($i = 0; $i < Count($File); $i++)
    {
	if (trim($File[$i]) == $Week)
	    {
		$i++;
		$a = $Maara + $i;
		$Yhteensa = 0;
		$ii = 0;
		For($i; $i < $a; $i++)
			{
			$Yhteensa = $Yhteensa + $File[$i];
			$Luvut[$ii] = $File[$i];
			$ii++;
			}
		}
	}
echo $Kysymys ." (". $Yhteensa .")<P>";
echo "<table border=0 class=\"Kysymys\" cellspacing=\"1\" cellpadding=\"1\">";
for($i = 0; $i < $Maara; $i++)
    {
	if($Luvut[$i] != 0)
		{
		$tmp = $Luvut[$i] / $Yhteensa * 100;
		$tmp2 = intval($tmp);
		}
	else
		{
		$tmp2 = 0;
		$Luvut[$i] = 0;
		}
	echo "<TR><TD ALIGN=\"right\">". $File2[$k + $i] ."</TD><TD WIDTH=65><img src=\"palkki.gif\" width=\"". $tmp2 ."%\" height=\"10\" border=\"0\"></TD><TD>". $tmp2."%</TD></TR>";
	}
echo "</table>";
?>
</body>
</html>

poll.dat (Esimerkki)

25.2002                / Viikko
Onkos sulla hauskaa?   / Kysymys
4                      / Vaihtoehtojen määrä
Tottakai =Þ            / Vaihtoehdot
Jepulis =)             / ...
Eipä erityisemmin =|   / ...
Ei =( Ei tietenkään ={ / ...
##...

Tulilintu [17.06.2002 13:03:06]

#

Jos ilmenee ongelmia ilmota mulle.

(nimetön) [18.06.2002 22:38:37]

#

"666-oikat"? Tietoturva++;

(nimetön) [25.06.2002 21:19:33]

#

Olisi sitten kyllä kiva tietää, että mitkä muut oikat tuolle pitäisi antaa++ ?

(nimetön) [28.06.2002 22:08:00]

#

niin.... miten saan toimimaan?

Parse error: parse error, expecting `','' or `';'' in /mbnet/m/merikala/viikonkys.php on line 22

fubu [10.07.2002 03:44:36]

#

Kävi vaan ohimennen mielessä, että miten php koodin pystyy tulostamaan?

(nimetön) [06.08.2002 14:48:41]

#

lol

(nimetön) [08.08.2002 22:20:36]

#

mut miten ton saa toimimaan ?????

mgv [13.09.2002 21:41:03]

#

erkki, jos et osaa laittaa 666 oikeuksia, niin tiedän miten ne yleensä saa laitettua kahdella parhaimmalla ftp ohjelmalla, eli painat tiedoston kodalla oikeanpuoleista näppäintä ja sen jälkeen jotain jossa lukee chmod. Loput hoida itse tai katso osoitteesta: http://www.jorkki.com

viluri [20.02.2003 20:51:43]

#

"Kävi vaan ohimennen mielessä, että miten php koodin pystyy tulostamaan? "

<?php
$koodi="<?php echo "moi" ?>";
highlight_string($koodi);
?>

Tai sitten tiedostosta:

<?php
show_source("tiedosto.php");
?>

T.M. [22.03.2003 23:53:56]

#

purkkaa... vielä purkempaa...


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta