voto sito web con stelle

  • Creatore Discussione Creatore Discussione Imperor
  • Data di inizio Data di inizio

Imperor

Utente Attivo
25 Nov 2010
102
2
18
Roma
www.fcfclean.it
salve buon 2016 e buona befana :) sul vostro sito ho trovato uno script voto a 5 stelle lo script funziona benissimo ma non so come salvare i voti ricevuti in modo che chi visita il mio sito web creato da me ( visibile sul mio profilo ) non sono un webmaster ma me la cavicchio :) vorrei che salvasse es. voti 5 stelle (10) voti 4 stelle (8) e cosi via.. in modo che chi visita il sito rimangono visibili i voti ricevuti chiedo aiuto grazie

HTML:
<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('images/star-off.gif');
  background-repeat: no-repeat;
  cursor: pointer;
}
#STAR_RATING li.on
{
  background-image: url('images/star-on.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)"></li>');
  document.write('<li id="star_2" onclick="star_vota(2)" onmouseover="star_accendi(0); star_accendi(2)"></li>');
  document.write('<li id="star_3" onclick="star_vota(3)" onmouseover="star_accendi(0); star_accendi(3)"></li>');
  document.write('<li id="star_4" onclick="star_vota(4)" onmouseover="star_accendi(0); star_accendi(4)"></li>');
  document.write('<li id="star_5" onclick="star_vota(5)" onmouseover="star_accendi(0); star_accendi(5)"></li>');
  document.write('</ul></div>');
  // accendo le stelle definite in argomento
  star_accendi(QT);
}
</script>


<script type="text/javascript">star(3);</script>
 
Ultima modifica di un moderatore:

Discussioni simili