Lauludele punktide lisamine

Punktide lisamis leht koosneb kahest osast. Kõigepealt kuvatakse loetelu kõigis tabelis olevatest lauludest. Ning kui kasutaja ühele neist vajutab, siis lisatakse laulule punkt. Punkti lisamiseks on viide

<a href='?healaulu_id=$id'>Lisa punkt</a> 

ehk siis küsimärgiga viide viib kasutaja samale failile. Kaasa antakse parameeter nimega healaulu_id, väärtuseks selle laulu id, mille nimele parajasti vajutatakse.  

Serveris lehe uuel avamisel kontrollitakse, kas parameeter healaulu_id on olemas. Kui jah, siis pannakse sellele laulule üks punkt juurde, ehk suurendatakse vastava välja väärtust.  

Väärtuse suurendamiseks ühe võrra sobib SQL-lause 

UPDATE laulud SET punktid=punktid+1 WHERE id=? 

kus siis küsimärgi kohale tuleb pärast käsu ettevalmistust vastava laulu id. Punktide jagamise kood tervikuna

<?php 
 $yhendus=new mysqli("localhost", "juku", "kala", "jukubaas1");  if(isSet($_REQUEST["healaulu_id"])){ 
 $kask=$yhendus->prepare("UPDATE laulud SET punktid=punktid+1 WHERE id=?");  $kask->bind_param("i", $_REQUEST["healaulu_id"]);
 $kask->execute(); 
 } 
?> 
<!doctype html> 
<html> 
 <head> 
 <title>Laulud</title> 
 </head> 
 <body> 
 <h1>Laulud</h1> 
 <table> 
 <?php 
 $kask=$yhendus->prepare("SELECT id, pealkiri, punktid FROM laulud");  $kask->bind_result($id, $pealkiri, $punktid); 
 $kask->execute(); 
 while($kask->fetch()){ 
 $pealkiri=htmlspecialchars($pealkiri); 
 echo "<tr> 
 <td>$pealkiri</td> 
 <td>$punktid</td> 
 <td><a href='?healaulu_id=$id'>Lisa punkt</a></td> 
</tr>"; 
 } 
 ?> 
</table> 
 </body> 
</html> 
<?php 
 $yhendus->close(); 
?> 

Tulemusena ilmuvad olemasolevad laulud silma ette. 

Millisele reale vajutati, selle laulu punktide arv suureneb ühe võrra.