Se in un'app Web, diciamo un'app che ha una tabella con l'indirizzo stradale memorizzato ( Stringhe ), l'amministratore dell'app aggiungerà spesso i dati per far crescere il suo archivio.
La tabella (MySQL) ha una chiave primaria con AUTO_INC
.
L'app Web consente agli utenti di aggiungere indirizzi autonomamente. Una volta che un utente inserisce un indirizzo, dice X , TUTTI gli utenti dell'applicazione potranno vedere l'indirizzo X durante la ricerca di indirizzi disponibili.
Cosa succede se, dato che l'indirizzo è una stringa, un utente memorizza contenuti inappropriati (come le parolacce, ad esempio)? Questo potrebbe offendere alcuni utenti e spingerli a smettere di usare l'app.
Quindi stavo pensando a cosa sarebbe stato meglio:
- Memorizzare l'input dell'utente in una tabella separata ("input in sospeso"), finché l'amministratore non li approva e quindi viene spostata la tabella ufficiale?
- Oppure memorizza gli input nella stessa tabella della tabella degli input dell'amministratore, ma inserisci un indicatore temporaneo su ogni record immesso (dagli utenti) in modo che siano visibili solo a quell'utente finché l'amministratore non li approva?
Da una nota a margine, è logico limitare ogni utente ad avere una quantità specifica di indirizzi di input al giorno che possono aggiungere (alcuni spammer potrebbero riempire la tabella con migliaia di record inutili)?