Domanda

Ho una forma semplice che discariche risposte selezionate per file XML. Come impedire utente anonimo di presentare questa forma molte volte?

Io non sono alla ricerca di soluzione totalmente a prova di proiettile, e ho una limitazione che non posso utilizzare il database, e quindi non SqlMembershipProvider.

Sarà alcuni cookie il lavoro di controllo? Come fare questo diritto?

Grazie in anticipo.

Aggiornamento:. Per essere più precisi, non solo dire alcune Sottoporre accidentale della forma, ma per impedire all'utente che ha visitato il sito una settimana fa di presentare ancora una volta questa forma

È stato utile?

Soluzione

In breve, non si può del tutto affidabile. Se non sei preoccupato per a prova di proiettile qualcosa come dici tu si potrebbe o

a) Persist un cookie al computer client e verificare la presenza di essa qualcuno pubblica la prossima volta. Ovviamente l'utente può cancellare i cookie in modo non brillante. b) è possibile memorizzare l'indirizzo IP dove è stata presentata da. Problema di questo è che ti impedisce più utenti dietro lo stesso IP presentando cioè proxy e lo stesso utente potrebbe postare da luoghi diversi.

Nessuno dei due è particolarmente buono e se è possibile, io consiglierei chiedendo loro di inserire un indirizzo email al via, conservare il posto di non confermata, e-mail un link di conferma fuori e solo a rendere il funzionario post, se si clicca su di essa . Anche in questo caso, non è a prova di proiettile, come non si ferma utenti che postano con più account di posta elettronica, ma è un po 'meglio rispetto alle opzioni di cui sopra.

HTH

Altri suggerimenti

Utilizzare le variabili di sessione per tenere traccia di ciò che l'utente sta facendo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top