curso SEO Training Rosa
Grupo SEO TELEGRAM [Click Aquí]
Resultados 1 al 11 de 11
Tema:

problema al que no encuentro solución

  1. #1
    cybersersupremo está desconectado Registrado

    User Info Menu

    Predeterminado problema al que no encuentro solución

    Hola, como ya os he contado en otras ocasiones tengo un juego de coches online, y tengo un bug que no soy capaz de solucionar aver si a alguno de vosotros mepodeis echar una mano y decirme como solucionarlos.

    El problema viene al comprar un coche, consiguen comprar muchos coches por el precio de menos y luego al venderlos tienen mas dinero que al principio y asi hasta el infinito.

    Lo consiguen dandole a comprar el mismo coche un moton ded veces hasta que carga lento y entonces entre la comprobacion de si tienen dinero o se han quedado sin, ya se ocmpra el otro coche , pero aun nole han restado el dinero del coche anterior.

    intente solucionarlo , guardando una cookie al principio de la paigna, que no deje comprar mas de un coche cada 5 minutos, pero no funciona , debe se rporque cuanod se queda colapsado ya ha pasado por ahi, ya no se que hacer la verdad. haor mismo he probaod a restar el dinero antes de hacer el into en la tabla coches, aver si asi se soluciona, a vosotros se os ocurre algo? Gracias

  2. #2
    Avatar de TaLu
    TaLu está desconectado Registrado
    Rango: Soy accionista de Google!!

    User Info Menu

    Predeterminado

    Hola:

    Puedes hacerlo con ajax para que no tengas ese problema de la carga lenta y ademas para asegurarte (no se si ya lo haces) usar sesiones y pasar por ahi el tema de que no compre más coches en al menos 2 minutos.

  3. #3
    elmister está desconectado Registrado

    User Info Menu

    Predeterminado

    No puedes confiar en el contenido de la cookie, guardalo en la sesion, por otro lado, a la vez que entregas el coche al usuario descuentale el importe

  4. #4
    cybersersupremo está desconectado Registrado

    User Info Menu

    Predeterminado

    y como hago para que esa variable de sesion se borre al cabo de 5 minutos por ejemplo?, guardo otra vatriable de sesion cone l tiempo y voy comprobando en cada pagina?

  5. #5
    animal está desconectado Registrado
    Rango: Google es mi amigo

    User Info Menu

    Predeterminado

    Primero desconta la platita y si la operación es true les das el coche

  6. #6
    nicolas2 está desconectado Registrado
    Rango: Google es mi amigo

    User Info Menu

    Predeterminado

    Cita Iniciado por cybersersupremo Ver Mensaje
    y como hago para que esa variable de sesion se borre al cabo de 5 minutos por ejemplo?, guardo otra vatriable de sesion cone l tiempo y voy comprobando en cada pagina?
    Ej:

    Tienes la página A, la que es un simple PHP
    Tiene otra página B, que la llamas por ajax desde A.

    Por ajax programado en A: cuentas los 5 minutos, Una vez en el tiempo; llamas a B para q reinicie las variables de session. Ose nunca te vas de la página A

    salute

  7. #7
    Tombar está desconectado Registrado
    Rango: Mente de negocios

    User Info Menu

    Predeterminado

    revisa la logica de la transaccion :P me parece que ta espantosamente programado eso che

    query mysql: SELECT monto FROM TABLA WHERE USUARIO = idusuario

    if((monto -= costo) > 0){
    query mysql UPDATE tabla SET monto = monto
    query mysql UPDATE tabla_coches SET autos = autos+1
    }else{
    negro no tenes plata pa comprar mas autos...
    }

  8. #8
    Avatar de Mariana
    Mariana está desconectado Registrado
    Rango: Soy accionista de Google!!

    User Info Menu

    Predeterminado

    Cita Iniciado por Tombar Ver Mensaje
    }else{
    negro no tenes plata pa comprar mas autos...
    }
    .


    Mariana

    .

  9. #9
    cybersersupremo está desconectado Registrado

    User Info Menu

    Predeterminado

    jajja, gracias por las respuestas

  10. #10
    Dev~> Invitado

    Exclamation

    Eso se hace con una transacción.... pero de verdad.
    El problema esta cuando varios 'selects' se ejecutan antes que los updates.
    Para solucionar eso se utiliza begin que loquea las filas usadas para que no puedan ser usadas por nadie hasta que commit es llamado.

    Las tablas en la operacion tienen que ser del tipo innodb
    entonces haces:
    Código:
    mysql_query('BEGIN');
    
    //todas las filas usadas de aca para abajo ( ya sean selects o updates ) van a ser lokeadas hasta que commit sea llamado
    
    mysql_query('select monto_disponible from tabla');
    mysql_query('select precio_coche from tabla');
    
    if(precio_coche > monto_disponible)
    {
        echo 'no te da el cash';
    }
    else
    {
        mysql_query('update tabla set monto_disponible = monto_disponible - precio_coche');
    }
    
    mysql_query('COMMIT');
    Si estuvieras manejando plata de verdad, tabas en el horno!

    Saludos a la gente del foro

  11. #11
    cybersersupremo está desconectado Registrado

    User Info Menu

    Predeterminado

    Cita Iniciado por Dev~> Ver Mensaje
    Eso se hace con una transacción.... pero de verdad.
    El problema esta cuando varios 'selects' se ejecutan antes que los updates.
    Para solucionar eso se utiliza begin que loquea las filas usadas para que no puedan ser usadas por nadie hasta que commit es llamado.

    Las tablas en la operacion tienen que ser del tipo innodb
    entonces haces:
    Código:
    mysql_query('BEGIN');
    
    //todas las filas usadas de aca para abajo ( ya sean selects o updates ) van a ser lokeadas hasta que commit sea llamado
    
    mysql_query('select monto_disponible from tabla');
    mysql_query('select precio_coche from tabla');
    
    if(precio_coche > monto_disponible)
    {
        echo 'no te da el cash';
    }
    else
    {
        mysql_query('update tabla set monto_disponible = monto_disponible - precio_coche');
    }
    
    mysql_query('COMMIT');
    Si estuvieras manejando plata de verdad, tabas en el horno!

    Saludos a la gente del foro
    muchas gracias!

Temas Similares

  1. encuentro genexus
    Por martillodethor2 en el foro Webmasters Porno
    Respuestas: 3
    Último Mensaje: 21/09/2009, 11:05
  2. no encuentro mi reloj!!!
    Por Nikki en el foro General SoyWebmaster
    Respuestas: 1
    Último Mensaje: 06/09/2007, 05:34
  3. Encuentro de webmasters
    Por TGPsexo en el foro General SoyWebmaster
    Respuestas: 14
    Último Mensaje: 07/03/2005, 19:11
  4. + Encuentro De Webmasters En Bs As.
    Por jml en el foro General SoyWebmaster
    Respuestas: 31
    Último Mensaje: 08/02/2005, 18:20
  5. Encuentro casual entre webmasters
    Por Neo en el foro General SoyWebmaster
    Respuestas: 9
    Último Mensaje: 21/03/2004, 01:20

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Has visto el post " problema al que no encuentro solución" que está en esta URL y ha sido creado por el usuario cybersersupremo. Esperamos que te haya sido de utilidad el artículo " problema al que no encuentro solución" que inició el usuario cybersersupremo de Soywebmaster.com.

Otros Foros de Interés

Curso SEO - Foro SEO - Foro Programacion - Foro Diseño Web - Intercambio de Enlaces - Negocios por Internet - Como Ganar Dinero - Foro Hosting - Foro Apuestas Deportivas

ÚLTIMOS ARTÍCULOS DEL BLOG SEO DE DAVID AYALA

Enlaces UGC, Sponsored y Nofollow [QUE NO TE ENGAÑEN]
Cómo y cuando usar Disavow Tool de Google
Cómo y donde comprar enlaces
El Curso de SEO Local que estabas esperando
Usamos cookies que analizan hábitos de comportamiento y navegación que aceptas al navegar aquí. Política de privacidad | Cookies | Aviso legal