|
|
|
|
Strumenti |
21-07-2018, 17:46 | #1 |
Senior Member
Iscritto dal: Oct 2007
Messaggi: 307
|
[js?]aggiornare db con drag n drop
Buongiorno a tutti,
Non sono un programmatore di professione quindi sicuramente scriverò castronerie. Sto programmando un piccolo gestionale per le mie esigenze. Sarà di tipo web e girerà su un mio server. Volevo sapere se era possibile aggiornare il db dopo un evento erano n drop. Mi spiego meglio: immaginate un griglia con alcune colonne. Da un altra colonna (di un altra griglia) prendo un elemento e lo trascino sulla colonna1. Fatto questo il db dovrebbe aggiornarsi e l'elemento che ho appena trascinato dovrebbe avere come categoria "colonna1" Cosa ne pensate? È una cosa fattibile? |
21-07-2018, 20:42 | #2 |
Member
Iscritto dal: Jul 2009
Messaggi: 273
|
Assolutamente fattibile. Non so che linguaggio andrai ad utilizzare ma la prima cosa che mi viene in mente è PHP + AJAX. Praticamente in js all'evento "rilascia elemento" fai partire un POST ad uno script PHP che si occuperà di salvare nel database con una query l'ordinamento degli elementi della tua griglia con una query. Il tutto ovviamente in tempo reale.
|
21-07-2018, 21:18 | #3 | |
Senior Member
Iscritto dal: Oct 2007
Messaggi: 307
|
Quote:
Ho cercato qualche esempio ma trovo solo sul drag n drop ma nulla che riguardi il db... |
|
21-07-2018, 22:47 | #4 |
Member
Iscritto dal: Jul 2009
Messaggi: 273
|
Ti anticipo sin da ora che quando si utilizza AJAX non puoi non considerare la possibilità che si verifichi un flood delle richieste. Te lo spiego con un esempio.
Se vai su Google ed inizi a digitare / cancellare lettere nel campo di ricerca con il debug aperto sul Rete, ti accorgerai che ad ogni pressione tasto parte un POST AJAX. Pensa a quante milioni di persone lo fanno simultaneamente e ti renderai conto di quanto questa semplice attività sia logorante per i server ma Google ha miliardi di dollari quindi non è un problema. Tornando al tuo caso, non so quanti visitatori utilizzeranno il tuo sistema e non ho idea della mole di trascinamenti che ognuno di essi farà. Se già sai di non potertelo permettere (ad esempio se sei su un hosting low cost) invece di focalizzarti sull'evento drag & drop registrando ogni singolo cambiamento, potresti ridurre il carico sul server ad esempio salvando la posizione nella griglia automaticamente ogni X secondi solo se è avvenuto un cambiamento oppure con un tasto "Aggiorna adesso" che preme lo stesso utente. Per quanto riguarda la tua domanda sul db devi necessariamente avere esperienza con MySQL. Devi creare le tabelle con colonne ed indici che ti occorrono. Pronta la struttura farai tanti INSERT con ON DUPLICATE KEY UPDATE in questo modo in una sola query inserisci i record se non esistono e li aggiorni se invece già esistono. |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:46.