|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2000
Città: In mezzo alla pianura Padana
Messaggi: 2169
|
[mysql] memorizzazione utenti di un sito
Secondo voi dove conviene salvare i dati degli utenti che accedono ad un sito internet (user_ID e password e privilegi) quando il loro numero diventa molto alto, diciamo oltre i 10000 iscritti?
Si continua a metterli nelle tabelle del DB "mysql" o è meglio crearsi le proprie tabelle? Grazie, ciao.
__________________
Ryzen 5700 X3D + Aorus B550 Elite + 32 Gb DDR4 3600 + RX6800 ref. + Sharkoon SilentStorm 650W |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2003
Messaggi: 362
|
la tabella user del db "mysql" non andrebbe toccata perchè è la tabella degli utilizzatori dei vari db creati. Un sito di solito accede con massimo 1-2 utenti al db, i dati dei tuoi utenti andrebbero in una tabella user del DBDELSITO.
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Aug 2000
Città: In mezzo alla pianura Padana
Messaggi: 2169
|
OK, allora se ho capito bene devo fare qualche utente generico con i privilegi che voglio concedere ai vari gruppi di utenti del sito (ad esempio se si trattasse di questo forum ci sarebbe un utente "membro", un altro "moderatore", ecc...) e poi passo a questi le query degli utenti che ho registrato nel mio DB?
Però cosa succede se due utenti mandano una query contemporaneamente? Grazie ancora, ciao.
__________________
Ryzen 5700 X3D + Aorus B550 Elite + 32 Gb DDR4 3600 + RX6800 ref. + Sharkoon SilentStorm 650W |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jun 2001
Città: Alessandria (provincia)
Messaggi: 4772
|
Come ti hanno già detto, gli utenti del DB mysql non vanno usati assolutamente per mettere gli utenti del portale.
In quella tabella ci vanno solo gli utenti del database e in teoria, per un DB generico, te ne basterebbero 2: root e utente. L'utente fa tutto con il DB generico. Cosa fare, a seconda dei diritti di "azione" sul portale lo decide l'applicazione intermedia. Gli utenti del portale li salvi in un database diverso, in una tabella del tipo: LOGIN_TABLE ID autoincrement LOGIN varchar (login dell'utente) PASSWORD varchar (password criptata dell'utente, meglio se non usando la chiamata password del DB ma MD5 o SHA o meglio ancora una libreria analoga del linguaggio di programmazione usato) NOME_REALE varchar Il nome reale dell'utente EMAIL varchar L'email dell'utente DIRITTI smallint Un codice numerico che ti rappresenta i diritti di azione di ogni utente (probabilmente memorizzati in una seconda tabella) Più tutti i campi di cui avresti bisogno (sesso, data di nascita, ecc) |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2000
Città: In mezzo alla pianura Padana
Messaggi: 2169
|
OK, ma mysql permatte di aprire più di una connessione con lo stesso user? Perchè se uso un solo utente generico per accedere ai dati del DB, potrebbe succedere che due utenti del sito facciano una query insieme. Cosa succede a quel punto?
__________________
Ryzen 5700 X3D + Aorus B550 Elite + 32 Gb DDR4 3600 + RX6800 ref. + Sharkoon SilentStorm 650W |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sì, permette di farlo...
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:17.