Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Newsletter #80

Open
fundor333 opened this issue Feb 9, 2015 · 14 comments
Open

Newsletter #80

fundor333 opened this issue Feb 9, 2015 · 14 comments
Assignees

Comments

@fundor333
Copy link
Member

É stata creata una pagina per l iscrizione e la rimozione dalla newsletter nella cartella servizi. Se inserite il form necessario x il funzionamento noi la linkeremo nel menu e nel footer

@rentsmdi
Copy link
Contributor

Basta un campo e-mail, un campo "conferma e-mail" e una spuntina su "acconsento al trattamento dei miei dati personali", che nel tag action abbia "insertNewsletter.php".

per il codice va benissimo una cosa tipo http://bootsnipp.com/snippets/featured/newsletter-subscribe

per la rimozione provvedo immediatamente a creare un file analogo "deleteNewsletter.php". @TBuc un utente qualsiasi riesce ad accedere al db per fare la delete? (tramite funzione apposita ovviamente)

@vpagini
Copy link

vpagini commented Feb 11, 2015

in realtà abbiamo un problema con la rimozione dalla newsletter: poichè non si riusciva a mandare e-mail in automatico tramite smtp abbiamo creato una casella di posta dove l'admin può mandare e-mail a tutti gli iscritti. Per la rimozione non siamo sicuri su come procedere in quanto la soluzione più plausibile ci sembra quella di mettere sul sito un opzione per rimuovere l'e-mail dal database (l'utente inserisce l'indirizzo in un form e questo viene rimosso dal db), ma a quel punto non sappiamo come controllare la correttezza della stessa (ergo: caso in cui un utente inserisca l'e-mail di un altro utente).
Procediamo così? @TBuc @fundor333 @Tpierluigi

AGGIORNO:

  • inserito codice form in newsletter.html

@fundor333
Copy link
Member Author

Io non farei la disiscrizione dal sito. Metterei nel fondo della lettera un link che, cliccato, porta a una pagina che esegue la query di eliminazione dal database dopo un bottone di conferma

@vpagini
Copy link

vpagini commented Feb 11, 2015

Quello però non sappiamo come farlo, intanto perché il link dovrebbe essere inserito dall'admin ogni volta (le e-mail sono manuali, ma immagino che si possa inserire una firma automatica),e secondo perché dal link non sapremmo come prendere l'email di chi ci ha cliccato


Da: Matteomailto:notifications@github.com
Inviato: ‎11/‎02/‎2015 17:08
A: InformaticaSaraLei/ProgettoSitomailto:ProgettoSito@noreply.github.com
Cc: Veronica Paginimailto:veronica.pagini@outlook.com
Oggetto: Re: [ProgettoSito] Newsletter (#80)

Io non farei la disiscrizione dal sito. Metterei nel fondo della lettera un link che, cliccato, porta a una pagina che esegue la query di eliminazione dal database dopo un bottone di conferma


Reply to this email directly or view it on GitHub:
#80 (comment)

@TBuc
Copy link
Member

TBuc commented Feb 11, 2015

@Lzuffellato dimmi se ho capito bene: mi stai chiedendo se un qualsiasi utente del sito può cancellare una riga dalla tabella newsletter? Se la domanda è questa, la risposta è: sì.
Chi decide cosa può fare l'utente è il backend, quindi se viene posizionato del codice che elimina una riga dal DB in una pagina accessibile a tutti, allora chiunque potrà eseguirla. Spiegata male ma semplicemente: le pagine pubbliche/private costituiscono in questo caso un layer intermedio tra il cosa-può-fare-l'utente-del-DB ed il cosa-può-fare-l'utente-del-sito.

@vpagini la risposta che ho appena dato a @Lzuffellato risponde anche al tuo quesito: sì, è fattibile.
Sollevi un dubbio circa la gestione della cancellazione: ovviamente o la sia fa da area privata, o non si può avere la certezza che qualcuno non stia cancellando email altrui. È una scelta vostra, e sarebbe corretto che non potesse accadere, ma vi faccio notare che non si tratta di un problema rilevante e che molti siti importanti effettivamente NON fanno questo controllo.

@NicolaFrx
Copy link
Contributor

Ciao sarebbe possibile fare un piccolo controllo di verifica esistenza della mail?

@vpagini
Copy link

vpagini commented Feb 12, 2015

Se intendi un controllo di verifica dell'esistenza dell'email inserita, allora no.
Più che altro perché non è possibile mandare automaticamente email di verifica conferma all'utente


Da: Nicola Baldomailto:notifications@github.com
Inviato: ‎12/‎02/‎2015 19:13
A: InformaticaSaraLei/ProgettoSitomailto:ProgettoSito@noreply.github.com
Cc: Veronica Paginimailto:veronica.pagini@outlook.com
Oggetto: Re: [ProgettoSito] Newsletter (#80)

Ciao sarebbe possibile fare un piccolo controllo di verifica esistenza della mail?


Reply to this email directly or view it on GitHub:
#80 (comment)

@NicolaFrx
Copy link
Contributor

Si intendevo sia che il valore inserito sia una mail, sia che l'e-mail inserita sia valida.
Pensavo fosse indipendente dal servizio di conferma

@rentsmdi
Copy link
Contributor

Aggiornato newsletter.html con controlli sulla mail inserita!
ps: oggi non riusciamo a provare, problemi con la vpn di ca foscari! risulta a qualcun altro?

@NicolaFrx
Copy link
Contributor

Ok grazie, appena riesco ad accedere aggiorno,
anch'io ho problemi di accesso, scusa la rottura!

@rentsmdi
Copy link
Contributor

no problem! speriamo riparta!

@Tpierluigi
Copy link
Contributor

secondo me potreste farla così: all'inserimento, nel DB ,registrate la mail, la primary key ed un hash md5/sha1 di mail, PK e data/ora di inserimento. il servizio che spedisce la mail, in calce alla stessa, riporta un link a deleteNewsletter con, in riga GET, la mail dell'utente e l'hash (il servizio ha chiaramente bisogno di collegarsi al DB) il file deleteNewsletter deve verificare l'esistenza della mail e che la corrispondente hash sia uguale a quella passata.

che ne dite?

@vpagini
Copy link

vpagini commented Feb 15, 2015

Grazie per il consiglio! Ma scusa la domanda scema, ma per "servizio" cosa intendi? Noi, come concordato col professore, abbiamo a disposizione solo una casella gmail dove l'admin può scrivere e-mail liberamente dopo aver caricato come il file csv che prende i contatti dal database


Da: Tpierluigimailto:notifications@github.com
Inviato: ‎15/‎02/‎2015 11:29
A: InformaticaSaraLei/ProgettoSitomailto:ProgettoSito@noreply.github.com
Cc: Veronica Paginimailto:veronica.pagini@outlook.com
Oggetto: Re: [ProgettoSito] Newsletter (#80)

secondo me potreste farla così: all'inserimento, nel DB ,registrate la mail, la primary key ed un hash md5/sha1 di mail, PK e data di inserimento. il servizio che spedisce la mail, in calce alla stessa, riporta un link a deleteNewsletter con, in riga GET, la mail dell'utente e l'hash (il servizio ha chiaramente bisogno di collegarsi al DB) il file deleteNewsletter deve verificare l'esistenza della mail e che la corrispondente hash sia uguale a quella passata.

che ne dite?


Reply to this email directly or view it on GitHub:
#80 (comment)

@Tpierluigi
Copy link
Contributor

in questo caso l'unica maniera è gestire l'aggiunta/disiscrizione dalla newsletter come avete fatto.
Io invece pensavo ad una pagina dove l'amministratore creava il messaggio e poi cliccava un bottone di spedizione: il codice PHP nell'action della form prendeva il testo e, per ogni appartenente alla lista di distribuzione, ci creava una mail, aggiungeva il link di disiscrizione con il meccanismo spiegato prima e la spediva con la funzione php send(), autenticandosi alla casella gmail. Un po' come in questo esempio: http://stackoverflow.com/questions/712392/send-email-using-the-gmail-smtp-server-from-a-php-page
Questa, ripeto, era una mia proposta; in origine mi pareva che sul vostro documento di specifica avevate fatto riferimento ad un servizio come MailChimp... però sia allora che adesso non avevo capito bene come doveva funzionare il tutto..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants