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
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
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.
No se cuanto durara una jornada pero puedes operar dias a las fechas. Con un campo de fecha_iniciojornada podrias...
CitarWHERE fecha_iniciojornada+7 < sysdate;
(por semana)
:huh:
http://prntscr.com/i8vzn7
Como 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