Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Ciclo con migliaia di query.

    Sto facendo un gioco che usa database MySQL dove i clan ad una certa ora del giorno versano dei soldi virtuali ai giocatori.
    Se il clan dovesse finire i soldi quell'operazione non deve andare a buon fine.

    Ipotizzando di gestire la cosa via PHP, dovrei fare un ciclo che per ogni giocatore verifichi i soldi del clan e se ci sono versa l'importo.
    Il problema è che se il gioco avesse migliaia e più di giocatori verrebbero migliaia di query

    C'e modo di gestire tutta la cosa tramite MySQL?
    Me ne infischio se necessita di tante query?
    Il Cavaliere dei Sogni

  2. #2
    perché parli di "ciclo"?

  3. #3
    Fai semplicemente una query che restituisce il totale. Ma senza sapere com'è fatto il tuo db non posso dirti come si fa.
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

  4. #4
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    Da quanto posso intuire vuol fare un ciclo del tipo

    "per ogni utente, fai un ciclo dove cerchi i suoi sodali, calcola il totale, e verifica se supera una certa soglia"

  5. #5
    Ho notato che mi sono spiegato in maniera pietosa.
    Scusate.

    Io avrei due tabelle.

    codice:
    utenti
    idutente idclan soldi dovuti
    1	 1      5     3
    
    clan	
    idclan	soldi_clan
    1       10
    Ho visto un tutorial in rete dove la persona suggeriva di fare un ciclo in php, dove per ogni utente prelevava i soldi da una parte, per metterli dall'altra.
    Io sono poco esperto ma a me pare una mostruosita, perche in caso di migliaia di iscritti vuole dire, fare una query per ogni iscritto.
    Pertanto mi chiedevo se non fosse piu saggio fare tutto in MySQL

    in sostanza per ogni utente dovrebbe:
    * prelevare a "soldi_clan" l'importo "dovuti"

    se ci sono abbastanza crediti
    * azzerare "dovuti"
    * sommare in utenti soldi=soldi+dovuti



    Il risultato diventerebbe

    codice:
    utenti
    idutente idclan soldi dovuti
    1	 1      8     0
    
    clan	
    idclan	soldi_clan
    1       7
    Il Cavaliere dei Sogni

  6. #6
    continuo a non capire perché dici che bisogna fare una query per ogni utente...

  7. #7
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    Originariamente inviato da optime
    continuo a non capire perché dici che bisogna fare una query per ogni utente...
    Ho visto un tutorial in rete
    Ovvio, no?

  8. #8
    [QUOTE]Originariamente inviato da narghat
    Ho notato che mi sono spiegato in maniera pietosa.
    [/CODE]

    Assolutamente sì, ma ora è tutto più chiaro

    Occhio: tempo fa leggevo un articolo il cui autore sostiene che i programmatori che non si sanno spiegare non sanno nemmeno programmare.

    Riguardo al tuo problema: certo che migliaia di query sono uno spreco, ma ti basta fare un'unica update multitabella:
    http://dev.mysql.com/doc/refman/5.5/en/update.html
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

  9. #9
    Originariamente inviato da in the web
    Occhio: tempo fa leggevo un articolo il cui autore sostiene che i programmatori che non si sanno spiegare non sanno nemmeno programmare.
    Veramente io sono un illustratore/grafico che va per i 40 anni. Sto programmando da meno di 2 anni.
    Solo che mi ha sorpreso come questo tizio suggerisca un ciclo while in php che faccia una query MySQL per ogni utente.
    http://youtu.be/iDCOnxlToJ4?t=3m59s
    Ed a ma faceva orrore come cosa.
    Poi boh, magari sono niubbo io.
    Il Cavaliere dei Sogni

  10. #10
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    Originariamente inviato da narghat
    Veramente io sono un illustratore/grafico che va per i 40 anni. Sto programmando da meno di 2 anni.
    Solo che mi ha sorpreso come questo tizio suggerisca un ciclo while in php che faccia una query MySQL per ogni utente.
    http://youtu.be/iDCOnxlToJ4?t=3m59s
    Io invece sono un estimatore di gatti che va per i 41 anni, ma programmo da più di 27 anni, quindi NON mi sorprendo se c'è chi dà tali suggerimenti.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.