PHP - Contador de descargas con MySQL y PHP desde Select

 
Vista:

Contador de descargas con MySQL y PHP desde Select

Publicado por todopoi (1 intervención) el 09/11/2016 19:52:10
Quería pediros ayuda porque me estoy volviendo loco con esto y no consigo sacarlo.

Tengo una página en PHP en la que hay un combo con varias opciones para seleccionar y que carga las diferentes opciones del combo desde una tabla en MySQL. Dependiendo de la elección, descarga un fichero. El link de ese fichero también la lee desde una columna de la misma tabla.

El problema es que me gustaría que dependiendo de que opción elija para descargas el fichero, querría hacer un contador que me sumase las descargas por cada uno de esos ficheros independientemente para saber cuantos archivos se bajan de cada opción.

La tabla la llamo: copilot
Las columnas que forman la tabla son:
- Id (empieza en 0 cuyo valor es "selecciona una opción" y en donde no se descarga nada, y a partir de 1, 2, 3, etc pertenecería a cada una de las opciones del combo a descargar)
- Opción (aquí indico el nombre del fichero a descargar)
- Enlace (aquí esta el link al fichero del estilo: ../prueba/mifichero.zip
- Descripción (incluye apuntes míos internos)
- Descargas (su valor inicial es 0. Aquí es donde quiero que se vayan sumando +1, pero en la fila de la opción que se descargue)

Digamos que hay 3 opciones a descargar incluidas en 4 filas:
-Opción 1
-Opción 2
-Opción 3

Bien si selecciono en el combo la opción 3 y abre el link a dicha opción, mi objetivo es que sume +1 en la columna "descargas" de la opción 3.
Pongo el código que uso en la página PHP para llamar al combo y como lo tengo ahora:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
function generaopciones()
{
include 'miconexion.php';
conectar();
mysql_set_charset('utf8');
$consulta=mysql_query("SELECT enlace, opcion FROM copilot ORDER BY id");
// Voy imprimiendo opciones a elegir de copilot
echo "<select name='$opcionSeleccionada' id='$opcionSeleccionada' onchange='if (this.value) window.location.href=(this.value)'>";
while($registro=mysql_fetch_row($consulta))
{
echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
}
echo "</select>";
desconectar();
}
?>
<div class='post format-quote box' style="left: 0px; top: -20px; height: auto;">
     <div id='contenido' class='seleccion' style="width: 100%; height: auto;">
   <div class="seleccionletrapeque" style="height: auto;"><h4><strong>
   Avisos no oficiales radares copilot android gps gratis<br><br>actualizacion
    2/11/2.016</strong></h4></div><div class="descripcion"><h1>En esta categoría puedes <strong>descargar gratis los avisos de radares fijos y
    móviles para GPS Copilot Android, así como radares de tramo y radares de semáforo con avisos de velocidad máxima de España y Portugal</strong>.
    <br>Estos avisos de radares no son oficiales y pertenecen a una base de datos distinta a la original.
    <br>Selecciona descargar los avisos de radares para Copilot Android o un manual de ayuda para la instalación.</h1></div><br>
  <div>  
   <?php generaopciones(); ?><br>
  </div>
  </div>
  </div>

Os agradecería muchísimo que me indicaseis lo que tengo que cambiar y agregar porque no doy con ello y no tengo muchos conocimientos de MySQL y PHP.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Contador de descargas con MySQL y PHP desde Select

Publicado por xve (6935 intervenciones) el 09/11/2016 21:04:14
La manera que yo utilizaría para contar las descargas, es en vez de enviar directamente al enlace, llamar a una pagina php intermedia la cual recibe el parámetro "opcion". Desde ahí aumentaría en 1 la descarga en la base de datos y redireccionaria a la pagina web.

No se si me he explicado bien... coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar