ciao a tutti,ho un problema con questa funzione che permette una votazione a stelle.
non so come prendere il valore delle stelle in una variabile php per poi inserirla in un db. non conosco js quindi chiedo gentilmente un aiuto.
questo è il codice della funzione:
codice:
<html>
    <head>
        <title>calcola il tuo compenso</title>
<style type="text/css">
#STAR_RATING ul
{
  margin: 0px;
  padding: 0px;
  height: 16px;
  list-style: none;
}
#STAR_RATING li
{
  width: 19px;
  height: 16px;
  display: block;
  float: left;
  background-image: url('vota.gif');
  background-repeat: no-repeat;
  cursor: pointer;
}
#STAR_RATING li.on
{
  background-image: url('votahover.gif');
}
#STAR_RATING span.output
{
  padding: 3px;
  color: #339900;
  font-weight: bold;
}
</style>
<script type="text/javascript">
// faccio il preload dell'immagine utilizzata per l'effetto rollover
var staron = new Image(); staron.src = "star-on.gif";

// Definisco la funzione per la votazione che verrà lanciata
// all'evento onclick su una delle 5 stelle
function star_vota(QT)
{
  // Creo una variabile con l'output da restituire al momento del voto
  var star_output = '<span class="output">Hai votato ' + QT + ' stelle!</span>';
  // Cambio dinamicamente il contenuto del DIV contenitore con il messaggio di
  // conferma di votazione avvenuta
  document.getElementById('STAR_RATING').innerHTML = star_output;
}

// Definisco la funzione per "accendere" dinamicamente le stelle
// unico argomento è il numero di stelle da accendere
function star_accendi(QT)
{
  // verifico che esistano i DIV delle stelle
  // se il DIV non esiste significa che si è già votato
  if (document.getElementById('star_1'))
  {
    // Ciclo tutte e 5 i DIV contenenti le stelle
    for (i=1; i<=5; i++)
    {
      // se il div è minore o uguale del numero di stelle da accendere
      // imposto dinamicamente la classe su "on"
      if (i<=QT) document.getElementById('star_' + i).className = 'on';
      // in caso contrario spengo la stella...
      else document.getElementById('star_' + i).className = '';
    }
  }
}

// Questa è la funzione che produce l'output.
// richiede come unico argomento il numero di stelle che si vuole accendere
// di default (possiamo in questo, ad esempio, modo mostrare il voto ottenuto
// nelle precedenti votazioni)
function star(QT)
{
  // stampo il codice HTML che produce le stelle
  document.write('<div id="STAR_RATING" onmouseout="star_accendi(' + QT + ')""><ul>');
  document.write('<li id="star_1" onclick="star_vota(1)" onmouseover="star_accendi(0); star_accendi(1)">');
  document.write('<li id="star_2" onclick="star_vota(2)" onmouseover="star_accendi(0); star_accendi(2)">');
  document.write('<li id="star_3" onclick="star_vota(3)" onmouseover="star_accendi(0); star_accendi(3)">');
  document.write('<li id="star_4" onclick="star_vota(4)" onmouseover="star_accendi(0); star_accendi(4)">');
  document.write('<li id="star_5" onclick="star_vota(5)" onmouseover="star_accendi(0); star_accendi(5)">');
  document.write('[/list]</div>');
  // accendo le stelle definite in argomento
  star_accendi(QT);
}

</script>
</head>
    <body>

<script>
star(4);

</script>
</body>
</html>