Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/02/2014, 13:42
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 10 meses
Puntos: 320
Respuesta: consejo para star rating?

Hola, hay muchas en la web, si lo buscases en google verias montones de opciones.

No obstante, si quieres algo bien simple podrias usar algo como esto:

Código HTML:
Ver original
  1. <!-- Pagina a calificar -->
  2. <form action="rating.php" method="post">
  3. <input type="hidden" name="id_page" value="IDENTIFICADOR_PAGINA_A_VALORAR">
  4. <input type="number" name="calificacion">
  5. <input type="submit" value="Calificar!">
  6. </form>

Código PHP:
Ver original
  1. // rating.php
  2. if($_POST['id_page'] && $_POST['calificacion'])
  3. {
  4.      $sql = 'INSERT INTO calificaciones VALUES(NULL, NOW(), '.intval($_POST['id_page']).', '.intval($_POST['calificacion']).' );';
  5.      // Ejecutar el sql con lo que sea que estes usando en tu web.
  6.      ....
  7.      // Enviar algo de agradecimiento
  8.      ....
  9. } else
  10. {
  11.  // Error. No hay datos suficientes.
  12.  ....
  13. }

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `calificaciones` (
  2.   `id` int(11) NOT NULL AUTO_INCREMENT,
  3.   `fecha` datetime NOT NULL,
  4.   `id_page` int(11) NOT NULL,
  5.   `calificacion` tinyint(4) NOT NULL,
  6.   PRIMARY KEY (`id`)

Como veras, no existe ninguna dificultad en un modulo de rating.
Podrias cambiar el input number por un grupo de radio options.
Podrias ocultar esos radio options y agregar labels con forma de estrellitas.
Podrias capturar el evento onsubmit del formulario y realizar con ajax el proceso.
O podrias no hacer nada de eso, y aun asi funcionaria.

Puedes obtener cualquier info de las calificaciones con simples y elementales SQL, usando la funciones:

COUNT() -> Cantidad de calificaciones.
AVG() -> Promedio de calificaciones
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios