Autor
|
Tema: ayuda con consulta a base de datos (Leído 3,049 veces)
|
etxebe
Desconectado
Mensajes: 5
|
Hola buenos dias
1 usuario solo puede hacer una apuesta por jornada 2 no se podra repetir ningun equipo por jornada
aqui tengo la consulta del numero 2
$jornada = $_POST['da']; $equipo = $_POST['equip']; $usuario = $_SESSION['user']; $compa = $_POST['compi']; $año = date("Y");
$sql="SELECT * FROM euroleague WHERE jornada='$jornada' AND id_equipo = '$equipo' and año='2018' and competicion = '$compa'" ; $consulta=mysqli_query($conexion,$sql) or die(mysqli_error($conexion)); $resultado = mysqli_num_rows($consulta); $fila = mysqli_fetch_assoc($consulta);
if ($resultado==1) { header("Location:error.php"); } else { $sql = "INSERT INTO euroleague (id_jornada,id_usuario,jornada,id_equipo,competicion,año) VALUES(Null,'$usuario','$jornada','$equipo','$compa','$año')"; $res = mysqli_query($conexion,$sql) or die(mysqli_error($conexion)); header("Location:ok.php"); }
?>
Ahora mi problema es impedir que un usuario no pueda hacer mas de una apuesta por jornada.
espero podais aydarme
muchas gracias
|
|
|
En línea
|
|
|
|
Orubatosu
|
Hay varias formas de hacerlo, como usar cookies, pero no lo recomiendo. En su lugar habilita un campo de fecha para cada usuario donde pones la fecha actual. Al hacer una nueva apuesta comprueba que la última fecha no coincide con la actual, y si es así rechaza la apuesta. Otra opción es hacer una tabla con booleanos relacionada con los clientes, pero debería de limpiarse al final de la jornada. Ocupa menos, pero es mas trabajo
|
|
|
En línea
|
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness" Hideto Matsumoto 1964-1998
|
|
|
etxebe
Desconectado
Mensajes: 5
|
muchas gracias. Lo de la fecha no lo acabo de entender. porque puede haber hecho la apuesta hace 3 dias y hoy volver a entrar y hacer otra apuesta en la misma jornada y las fechas no coincidirian y no serviria,no ?pq mientras no llega la fecha del evento la apuesta esta activa
lo que estoy usando es esta consulta
$sql="SELECT * FROM euroleague WHERE jornada='$jornada' AND id_usuario = '$usuario' and año='2018' and competicion = '$compa'" ; $consulta=mysqli_query($conexion,$sql) or die(mysqli_error($conexion)); $resultado = mysqli_num_rows($consulta); $fila = mysqli_fetch_assoc($consulta);
es decir miro la jornada, el usuario,el año y la competicion y si obtengo resultado haria un update y si no hay resultado hago el insert.
|
|
« Última modificación: 1 Febrero 2018, 11:33 am por etxebe »
|
En línea
|
|
|
|
M4rduK
Desconectado
Mensajes: 12
|
No se cuanto durara una jornada pero puedes operar dias a las fechas. Con un campo de fecha_iniciojornada podrias... WHERE fecha_iniciojornada+7 < sysdate; (por semana)
|
|
|
En línea
|
El presente pasa, el espiritu transciende. Sin vida no habria maquina, sin maquina cual seria la vida?
|
|
|
etxebe
Desconectado
Mensajes: 5
|
http://prntscr.com/i8vzn7Como se ve en el calendario hay un dia y una hora del evento, a la que pasa esa hora el evento desaparece y ya no pueden apostar. El problema esta que mientras no llegue esa hora un mismo usario puede hacer las apuestas que quiera mientras no apueste por un equipo ya apostado esa jornada. lo que yo quiero es que en vez de insertar, si ese usario tiene ya una apuesta pues que se le modifique. un saludete
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
¿Consulta a un Base de Datos de accces?
Programación Visual Basic
|
TheGhost(Z)
|
5
|
2,978
|
18 Noviembre 2005, 09:47 am
por TheGhost(Z)
|
|
|
Error en consulta a base de datos
Programación Visual Basic
|
Gorky
|
2
|
2,694
|
8 Febrero 2008, 21:27 pm
por Pendex
|
|
|
consulta base de datos
.NET (C#, VB.NET, ASP)
|
Choclito
|
1
|
3,379
|
9 Mayo 2010, 06:19 am
por raul338
|
|
|
ayuda con consulta a base de datos y foreach
.NET (C#, VB.NET, ASP)
|
slipeer
|
3
|
4,176
|
1 Agosto 2011, 12:00 pm
por slipeer
|
|
|
ayuda con una consulta en php ya que rediseñe mi base de datos
PHP
|
geshiro
|
1
|
2,170
|
4 Marzo 2016, 19:39 pm
por sodark
|
|