[PHP] Aree riservate e gestione utenti

lxella

Nuovo Utente
2 Dic 2017
3
0
1
17
Mantova
Ciao a tutti (di nuovo),
passo subito al dunque essendomi già presentato in un'altra discussione.
Sto realizzando un sito per il mio gruppo scout (lo dico per introdurre il fatto che sono tutti imbranati in tecnologie informatiche, quindi devo lasciare qualcosa - anche per quando non ci sarò più - di intuitivo e moooolto semplice da usare).
Abbiamo inserito 1 solo CMS (ZenPhoto) per gestire un album fotografico. Questo CMS ha una tabella nel database legata agli utenti che abbiamo deciso di sfruttare.
Per questo motivo abbiamo creato una pagina di registrazione in PHP esterna a ZP poiché nel cms risultava molto più difficile creare gli utenti. La pagina si collega al database (nella tabella del cms) e inserisce gli utenti.
Già qui avrei alcune richieste.. Siccome la registrazione verrà effettuata dai capi scout (per permettere l'accesso solo ad utenti autorizzati) devo renderla il più veloce possibile... Devo richiedere i campi Nome, Username, Email, Gruppo e Password. A questo punto vi chiedo:
  • è possibile far sì che il campo email si inserisca automaticamente [email protected] (dove username è dinamico e corrisponde al campo prima, mentre @dominio.dominio è statico e rimane sempre uguale - ovviamente la mail non esiste, ma il cms la richiede obbligatoriamente per autorizzare l'utente ad accedere, quindi inseriamo una mail fasulla che poi essi potranno modificare)?
  • è possibile generare automaticamente una password di una lunghezza stabilita?
Poi, nel sito sono presenti anche alcune aree riservate.. Una è l'area documenti (ho già il form per il caricamento dal sito, per l'eliminazione useremo l'hosting, almeno per ora) cui devono poter accedere tutti i gruppi (nel mio caso le 6 squadriglie, i capi e gli amministratori - non i genitori o comunque un visitatore), mentre le altre sono aree riservate ai soli amministratori.
Per fare ciò mi serve che il login sia collegato alla medesima tabella del database e che possa autenticare solo gli utenti attivi e appartenenti al gruppo indicato. Adesso per proteggere queste pagine ho messo gli .htaccess ma, a quanto ne so, non sono collegabili al database (se invece mi sbaglio ditemelo!).
La cosa più comoda, per me, sarebbe avere il login esattamente com'è adesso con gli .htaccess (il popup che altrimenti non fa visualizzare la pagina).

Passiamo a quella che, credo, sia l'ultima cosa: la gestione degli utenti.
Per la gestione dei documenti posso anche affidarmi all'hosting, essendo comunque abbastanza intuitivo..
Ma per la gestione degli utenti non posso chiedere che passino per il database, perché sicuramente non sarebbe pratico per loro, e rischierebbero di combinare dei disastri, e la gestione delle utenze tramite il cms è abbastanza confusionaria.. Quindi pensavo a una pagina in cui, per lo meno, siano visualizzabili tutti gli utenti (nella tabella sono salvati anche i gruppi che servono al cms, e questi hanno come valore di validità 0, mentre le utenze con id/user/pass/email/... hanno valore di validità 1, quindi mi servirebbe che gli utenti vengano selezionati solo se attivi (valore di validità 1) e, se possibile, li vorrei avere divisi nei vari gruppi che dicevo prima (le 6 squadriglie, capi e genitori), se non fosse possibile va bene una pagina unica in cui visualizzarli, ma con una casella di ricerca per trovare velocemente chi sto cercando. Poi ho necessità di visualizzare per ogni utente il nome, lo username, il gruppo (se non divisi nei gruppi), la mail e la password di default. Spiego quest'ultimo punto..
Siccome le utenze vengono create dagli amministratori (e qui entrerebbe in gioco la cosa della password automatica che dicevamo), questi devono poi comunicare agli interessati le credenziali. Siccome, sempre per un discorso di praticità e rapidità non è pensabile segnarsi le password di tutti, dovrei visualizzare la password della registrazione. E qui nascono i problemi.. Nel senso che questa è l'unica cosa delle tre che sono riuscito, seppur in parte, a fare. Ho trovato uno script PHP che richiamasse il database e stampasse a video solo gli utenti validi (la cosa del gruppo non sono riuscito a farla) mettendo
PHP:
SELECT * FROM tabella WHERE valid='1'
e inserendo poi la tabella HTML che veniva popolata. Il problema, se così vogliamo chiamarlo, è che nel database ho le password criptate in MD5.. Per questo mi esce a video l'hash della password di cui mi faccio ben poco. Io non voglio assolutamente conoscere la password degli utenti, anche per motivi di privacy e sicurezza, ma pretendo di sapere la password di default assegnata per potergliela comunicare... Avendo gli utenti divisi per gruppi, potrei stampare la pagina con le password di default di ognuno e consegnarle al capo squadriglia (sostanzialmente il coordinatore delle squadriglie, ovvero dei gruppetti all'interno del gruppo scout).
Se non si riuscisse a visualizzare la password di default nella pagina di gestione utenti vorrei almeno che potesse arrivare via mail a una mail uguale per tutte le utenze (una mail del gruppo appositamente creata), così che sia possibile stampare le varie mail (che nell'oggetto segnaleranno anche lo username per un facile riconoscimento).
Altre funzionalità che sarebbero molto utili all'interno della gestione utenti sarebbero quelle per:
  • generare una nuova password agli utenti (e anche qui, o spedirla via mail o salvarla nella pagina - sarebbe utile nel caso in cui un utente dimenticasse la password, così se ne genera una nuova);
  • modificare l'utente (o meglio, siccome nome e username rimarranno uguali, la mail sarà modificabile dall'utente a suo piacimento dal cms in quanto egli può gestire solo il suo profilo e non tutti e 40, e la password sarà modificabile da lui nel cms e da noi con il genera nuova password - nel caso - l'utilità sarebbe nel modificare i gruppi, poiché non è scontato che per tutti gli anni si rimanga nella stessa squadriglia, è anche possibile che essa venga cambiata);
  • eliminare l'utente (o renderlo, per lo meno, inattivo, in modo che non possa visualizzare le foto o i documenti riservati una volta uscito dal gruppo).
Dovrebbe essere tutto..
Ah, dimenticavo di dirvi che ho già provato con alcuni script e quant'altro a fare quanto ho detto sopra, ma non ho prodotto risultati, probabilmente sono altamente incapace XD

Ringrazio anticipatamente chi vorrà aiutarmi (sempre se c'è qualcuno disposto a farlo!)
 

macus_adi

Utente Attivo
5 Dic 2017
1.323
88
48
IT/SW
è possibile far sì che il campo email si inserisca automaticamente [email protected] (dove username è dinamico e corrisponde al campo prima, mentre @dominio.dominio è statico e rimane sempre uguale - ovviamente la mail non esiste, ma il cms la richiede obbligatoriamente per autorizzare l'utente ad accedere, quindi inseriamo una mail fasulla che poi essi potranno modificare)?
SI attraverso javascript potrai manipolare l'input.
-
è possibile generare automaticamente una password di una lunghezza stabilita?
SI, ma la password in chiaro o cifrata?
In chiaro = devi creare una funzioncina
Cifrata = substr(md5(time()),0,8);
-
Per fare ciò mi serve che il login sia collegato alla medesima tabella del database e che possa autenticare solo gli utenti attivi e appartenenti al gruppo indicato.
Perchè non utilizzate le sessioni?
-
ma pretendo di sapere la password di default assegnata per potergliela comunicare...
Il sistema dovrebbe inviare una email all'utente collegato contenente la password creata.
-

Per farla brave potresti optare per WP o JM, altamente personalizzabili e di facile gestione!
 
Discussioni simili
Autore Titolo Forum Risposte Data
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4
M Problemi con la stampa dei valori in php PHP 1
W [Cerco collaborazioni] Sviluppatore Web (PHP) Offerte e Richieste di Lavoro e/o Collaborazione 0
D passare valori da database sql a php PHP 1
L Ricezione dei dati su file php da modulo html PHP 6
E Inviare variabile a PHP da ciclo in JS Javascript 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
F menù select dinamico da db in php PHP 3
L Problemi form Pagina php HTML e CSS 3
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
F Il codice php è giusto? PHP 2
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1
E Barra di avanzamento codice PHP PHP 4
G creazione menu a tendina e invio a pagina php PHP 1
A inserire variabile php colore in div html PHP 2
Z Video protetto con PHP PHP 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
I Eecuzione di javascript in ciclo foreach php. PHP 7
S Libreria PHP per creare file dwg o dxf PHP 0
A [cerco - retribuito] Sviluppatore Php freelance per progetti vari Offerte e Richieste di Lavoro e/o Collaborazione 2
L Google chart php mysql PHP 2
R Download file multipli da directory php PHP 0
F pagina dinamica PHP PHP 3
P Rimozione automatica url da sitemap.xml con PHP PHP 1
L php tinymce mi duplica la classe label PHP 3
S Errore PHP - Notice: Undefined index ... PHP 14
N file manager da php 5 a 7 PHP 15
M Utilizzare la funzione mysql_num_rows() in PHP 5 PHP 3
elpirata Update dinamico informazioni scritte in una pagina php jQuery 11
N Mysql_result per PHP 7 PHP 2
Emix Select concatenate php sql ajax PHP 2

Discussioni simili