आपको htmlentities
का उपयोग नहीं करना चाहिए इसे सहेजते समय। आपको htmlentities
. का उपयोग करना चाहिए इसे प्रदर्शित करते समय। अंगूठे का नियम तब तक डेटा को एन्कोड/सेनिटाइज नहीं करना है जब तक आपको आवश्यकता न हो। यदि आप htmlentities
करते हैं उस पर जब आप सेव करते हैं तो आपको html_entity_decode
करना होता है पाठ पर जब उपयोगकर्ता इनपुट संपादित करना चाहता है। इसलिए आप जिस चीज की जरूरत है उसके लिए सैनिटाइज करें और इससे ज्यादा कुछ नहीं। इसे सहेजते समय, आपको SQL इंजेक्शन के लिए सैनिटाइज़ करने की आवश्यकता होती है, इसलिए आप mysql_real_escape_string
यह। प्रदर्शित करते समय, आपको XSS के लिए सैनिटाइज़ करने की आवश्यकता होती है, ताकि आप htmlentities
यह।
साथ ही, मुझे यकीन नहीं है कि आपने डैरिल हेन की टिप्पणी देखी है, लेकिन आप वास्तव में मैजिक_कोट्स सक्षम नहीं करना चाहते हैं। वे एक बुरी, बुरी चीज हैं और PHP 5.3 के रूप में पदावनत कर दिया गया है और पूरी तरह से PHP 6 में चला जाएगा।