Gestisco un sito di social network di nicchia. Vorrei disabilitare il contenuto HTML nei messaggi inviati dagli utenti; come video incorporati ecc. quale opzione c'è in php per pulire questo prima di inserirlo nel db.PHP: come posso disabilitare il contenuto HTML nei contenuti generati dagli utenti?
7
A
risposta
3
È possibile utilizzare la funzione strip_tags()
.
14
ci sono tre soluzioni di base:
- Striscia tutti i tag HTML dal palo. In PHP puoi farlo usando la funzione
strip_tags()
. - Codifica tutti i caratteri, in modo che se un utente digita
<b>hello</b>
viene visualizzato come<b>hello</b>
. In PHP questa è la funzionehtmlspecialchars()
. (Nota: in questa situazione generalmente si memorizza il contenuto nel database così com'è e si utilizzano htmlspecialchars ovunque si invii il contenuto.) - Utilizzare un disinfettante HTML come HTML Purifier. Ciò consente agli utenti di utilizzare determinate formattazioni HTML come grassetto/corsivo, ma blocca Javascript dannoso e qualsiasi altro tag che desideri (ad esempio
<object>
nel tuo caso).
+0
Grazie. Sono quei suggerimenti 'o/o', o' e'? – JDelage
+1
@JDelage Sia/che, eccetto se si usa 'strip_tags', si dovrebbe anche usare' htmlspecialchars' per codificare qualsiasi simbolo più/meno di avanzo oltre a virgolette ed e commerciali. – DisgruntledGoat
Problemi correlati
- 1. implementazioni di database automatizzati con contenuti generati dagli utenti (alla CMS)
- 2. Come creare un sistema di versioning/storia/revisione per i contenuti pubblicati dagli utenti?
- 3. Symfony2 - Dove posso caricare i file caricati dagli utenti?
- 4. Come posso importare html con php?
- 5. Come posso sovrascrivere il contenuto del file con il nuovo contenuto in PHP?
- 6. Rimuovi tutti i tag html dagli attributi nei binari
- 7. Regex per abbinare il contenuto del corpo HTML in PHP
- 8. Come verificare se il contenuto delle stringhe contiene HTML?
- 9. Come posso disabilitare l'evidenziazione dell'HTML contenuto nei file .js/.ts in Webstorm?
- 10. php: scarica il contenuto variabile come file
- 11. Qual è il modo migliore per gestire il contenuto html generato dall'utente che verrà visualizzato dal pubblico?
- 12. Come posso ottenere il contenuto del file caricato in PHP?
- 13. Come eliminare il contenuto di un tag HTML in Emacs
- 14. Come posso rimuovere "& nbsp" dai contenuti html?
- 15. Come ottenere il contenuto html da XWalkView?
- 16. Come ottenere i contenuti dagli appunti del cliente come questo sito web
- 17. Come posso sandbox il contenuto JavaScript inviato dall'utente non affidabile?
- 18. Come posso disabilitare le virgolette PHP in fase di runtime?
- 19. Come ottengo un indirizzo email dagli utenti in "Twitter4J"?
- 20. Come posso disabilitare il contenuto di MobileSafari durante il cambio di orientamento?
- 21. Come incollare il rich text dagli appunti all'elemento textarea HTML?
- 22. Ottenere html dagli appunti in javascript
- 23. PHP: Come posso bloccare l'accesso diretto all'URL a un file, ma permetterlo comunque di essere scaricato dagli utenti registrati?
- 24. Come posso analizzare il contenuto dinamico da una pagina Web?
- 25. Amazon EC2, S3, API REST e come fornire correttamente i contenuti agli utenti
- 26. Come rimuovere i codici colore utilizzati dagli utenti di mIRC?
- 27. Come posso inizializzare il provider di contenuti?
- 28. z-index IE8 bug sui contenuti generati con: dopo
- 29. Come disabilitare il supporto HTML automatico di JLabel?
- 30. Come riprodurre l'intero contenuto di un file .html in php?
Si sta utilizzando un CMS, in tal caso quale. – toomanyairmiles