1dMN wrote:
alby wrote:
Servono ancora altri dati, comunque se rientra in uno dei 3 casi sotto devi fare sempre uno script che fai girare (meglio con un cron se hai l'accesso)
1. Hai la mappatura username e la password è conosciuta (potrebbe essere ancora la username).
Puoi già inserirli in FEU e poi procedere con un piccolo script che controlla se password != password_conosciuta, se sì -> muovi in members
2. Hai la mappatura username - nome ma la password non è conosciuta.
Puoi procedere con un piccolo script che controlla se l'utente si è registrato e username e nome coincidono con quelli che hai inserito in una tabella MySQL con username - nome, se sì muovi a members
3. Se hai solo username non hai molta scelta e fidarti che chi inserisce i dati sia effettivamente quella persona che ha il codice e come il 2 procedere a members se quel username è presente in una tabella che hai caricato.
Alby
Ok, mettiamo che per assurdo io sia nella condizione 3, cioè io - amministratore del sito - sono solamente a conoscenza dell'esistenza di questi codici.
Forse la soluzione migliore, a questo punto, sarebbe come dici tu creare una tabella di incrocio con i codici ABCblablabla, riconoscere che uno di quei codici ha diritto a visualizzare la pagina di registrazione dove, a quel punto, il campo username sarà, com'è giusto che sia, di libera compilazione.

non puoi riconoscere che l'utente che visita la pagina di registrazione è in possesso del codice (per giunta buono)

La registrazione, per forza, è libera; il controllo lo fai a posteriori sugli utenti in pending:
costruisci una tabella (feusers_codici) con:
codice, registrato (questo solo nel caso ci siano altri members non registrati in questo modo)
supponendo che (cms_module_feusers_groups):
id groupname
1 members
2 pending
a questo punto fai un join fra:
cms_module_feusers_users, cms_module_feusers_belongs, feusers_codici
in cui:
cms_module_feusers_users.id=cms_module_feusers_belongs.userid e cms_module_feusers_users.username=feusers_codici.codice e cms_module_feusers_groups=2
per ognuno dei risultati fai:
update per ogni userid in cms_module_feusers_belongs settando groupid=1
e (nel caso di cui sopra così sai esattamente quanti di questi sono registrati in members senza spulciare tutto FEU)
update per ogni codice in feusers_codici settando registrato=1
Buona fortuna
Alby