Pensavo di esserne in grado, ma dopo aver mandato in crash phpmyadmin col codice mi son detto ke è meglio una consulenza da esperti
Codice PHP:
<?
session_start
();

$voto $_POST[voto];
$id_song $_POST[id_canzone];
$nome $_SESSION[user];

$db db_connetti();

//Verifico che l'utente in questione non abbia già espresso un voto per questa canzone
$query "SELECT user_votante FROM Voti_Canzoni WHERE id_canzone = 'id_song' " 
$result mysql_query($query$db);

while (
$row mysql_fetch_array($result))
{
if (
$row[user_votante] == $nome){
echo 
"Hai già votato questa canzone";
?>
   <html>
   <SCRIPT LANGUAGE="JavaScript">window.setTimeout("document.location='HomePageUtenti.php'",4000)</SCRIPT>
   </html>
<?

}
}


$query2 " INSERT INTO Voti_Canzoni ( voto, id_canzone, user_votante ) 
           VALUES ( '
$voto', '$id_song', '$nome' ) " ;

if (
mysql_query($query2$db))
  {
   echo 
'<h2>Votazione inserita</h2>

'
;
  }
  
   echo 
'Sarai automaticamente indirizzato alla Homepage Utenti entro pochi secondi...';
   
?>
   <html>
   <SCRIPT LANGUAGE="JavaScript">window.setTimeout("document.location='HomePageUtenti.php'",4000)</SCRIPT>
   </html>
Ricevo correttamente il voto, id_canzone e user dall sessione corrente. Devo fare in modo però che lo user attuale nella sessione non possa votare 2 volte la stessa canzone. Ho provato ad estrarre dal db le canzoni con lo stesso id che ricevo e fare il controllare tra il campo user_votante e $nome.
Niente purtroppo, ho provato molto: o mi ignora il controllo o il ciclo va avanti all'infinito e mi blocca tutto.
In pratica se nella tabella Voti_Canzoni c'è già il record con lo stesso id_Canzone e lo stesso user_votante di quello attuale devo avvisare che il voto è già stato inserito, altrimenti inserisco il voto.