Közvélemény kutatás
Feladat: írjunk olyan weboldalt php segítségével, mely egy szavazás eredményeinek rögzítésére alkalmas. Lehessen például arra szavazni, hogy nagyvárosaink mennyire élhető városok. Véleményünket iskolai osztályzatokkal fejezhetjük ki. A legjobban élhetőnek gondolt városnak 5 pontot, a legkevésbé élhetőnek 1 pontot (esetleg 0 pontot – ha nem jelölünk be semmit) adhatunk. Az eredmények rögzítésére az adatbázisban egy varosok nevű táblát használjunk. A mezőnevek elég beszédesek: id, VNev, Adott, VPont. (ID, Város neve, a felhasználó által Adott pontok illetve a Város összes kapott Pontja.)
A lap a következőképpen jelentkezzen be:
A szavazás a megfelelő radio button bejelölésével lehetséges. Ha nincs bejelölés, akkor az érintett városnak 0 pontot adunk. Adott pontjaink beállítása után megnyomhatjuk a Mehet feliratú nyomógombot, mely egy submit-ot vált ki. Az általunk adott pontokat és a pontverseny állását a visszakapott táblázatban tekinthetjük meg. Ebben a táblázatban a városokat már rangsorolva látjuk, elsőként a legélhetőbb várossal. Egyetlen szavazás után így néz ki oldalunk:
A feladatot megvalósító php oldal teljes listája:
http://gorbem.hu/PH/Kutatas.php
<?php
include("hconfig.php");
$ered = mysql_query("SELECT *
FROM varosok");
$sorsz = mysql_num_rows($ered);
$sorsz = $sorsz+0;
if ( $sorsz == 0 ){
$varosok = array("Miskolc","Debrecen","Szolnok","Szeged","Pécs","Győr");
for ($i=0; $i<6; $i++){
$v = $varosok[$i];
mysql_query("INSERT INTO varosok SET VNev='$v'");
}
}
?>
<html>
<head>
<title>Közvélemény kutatás - php</title>
</head>
<body>
<form name="" action="Kutatas.htm" method="POST">
<input type="submit" name="vissza" value="Vissza" />
<center>
<h2>Közvélemény kutatás (élhető város):</h2>
<?php
$vname = array("miskolc","debrecen","szolnok","szeged","pecs","gyor");
?>
<form name="kutat" action="" method="POST">
<table border="1" cellpadding="3" cellspacing="0" bgcolor="#eeeeee">
<tr>
<th>Város\minősítés</th>
<?php
for ($i=1; $i<=5; $i++){print "<th>$i</th>";}
?>
</tr>
<?php
$n = 0;
$varosok = array();
$ered = mysql_query("SELECT *
FROM varosok");
while ($sora = mysql_fetch_object($ered)){
$v = $sora->VNev;
array_push($varosok,$v);
print "<tr>";
print "<th>$v</th>";
for ($i=0; $i<5; $i++){
print "<td><input type=\"radio\"
name=\"$vname[$n]\" value=\"$i\"/></td>";
}
print "</tr>";
$n++;
}
?>
</table>
<br />
<input type="submit" name="mehet" value="Mehet" />
</form>
<?php
if ( isset($_POST['mehet']) ){
for ($i=0; $i<$sorsz; $i++){
$w = $vname[$i];
if ( isset($_POST[$w]) ){$a = $_POST[$w]+1;} else{$a = 0;}
mysql_query("UPDATE varosok SET Adott=$a, VPont=VPont+$a
WHERE VNev='$varosok[$i]'");
}
print "<table border=\"1\" cellpadding=\"5\" cellspacing=\"0\"
bgcolor=\"#dddddd\">\n";
print "<tr>";
print "<th>Város</th>";
print "<th>Adott pont</th>";
print "<th>Összesen</th>";
$eredmeny = mysql_query("SELECT *
FROM varosok ORDER BY VPont
DESC");
while ($egysor = mysql_fetch_object($eredmeny)){
print "<tr>";
print "<td><b>$egysor->VNev</b></td>";
print "<td
align=\"center\">$egysor->Adott</td>";
print "<td
align=\"center\">$egysor->VPont</td>";
print "</tr>";
}
print "</table>";
}
?>
</center>
</body>
</html>