Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

क्या मुझे तैयार बयानों में htmlentities() या htmlspecialchars() चाहिए?

htmlentities और htmlspecialchars HTML आउटपुट . उत्पन्न करने के लिए उपयोग किया जाता है जो ब्राउज़र को भेजा जाता है।

डेटाबेस इंजन . को क्वेरी जेनरेट करने/भेजने के लिए तैयार स्टेटमेंट का उपयोग किया जाता है ।

दोनों डेटा से बचने की अनुमति देते हैं; लेकिन वे एक ही उपयोग के लिए नहीं बचते हैं।
तो, नहीं, तैयार कथन (एसक्यूएल प्रश्नों के लिए) आपको htmlspecialchars . का ठीक से उपयोग करने से न रोकें /htmlentities (एचटीएमएल पीढ़ी के लिए)

strip_tags About के बारे में :यह एक स्ट्रिंग से टैग हटा देगा, जहां htmlspecialchars उन्हें HTML निकायों में बदल देगा।
वे दो कार्य समान कार्य नहीं करते हैं; आपको यह चुनना चाहिए कि आपकी आवश्यकताओं के आधार पर किसका उपयोग करना है / आप क्या प्राप्त करना चाहते हैं।

उदाहरण के लिए, इस कोड के साथ:

$str = 'this is a <strong>test</strong>';
var_dump(strip_tags($str));
var_dump(htmlspecialchars($str));

आपको इस तरह का आउटपुट मिलेगा:

string 'this is a test' (length=14)
string 'this is a &lt;strong&gt;test&lt;/strong&gt;' (length=43)

पहले मामले में, कोई टैग नहीं; दूसरे में, ठीक से बच गए।

और, एक HTML आउटपुट के साथ:

$str = 'this is a <strong>test</strong>';
echo strip_tags($str);
echo '<br />';
echo htmlspecialchars($str);

आपको मिलेगा:

this is a test
this is a <strong>test</strong>

आप इनमें से कौन सा चाहते हैं? वह महत्वपूर्ण प्रश्न है ;-)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. चेतावनी SqlExceptionHelper:143 - SQL त्रुटि:0, SQLState:08S01- SqlExceptionHelper:144 - संचार लिंक विफलता

  2. MySQL बाइनरी बनाम चार कैरेक्टर सेट बाइनरी

  3. मैं MySQL को अस्थायी रूप से कमांड लाइन के माध्यम से केवल-पढ़ने के लिए कैसे सेट करूं?

  4. MySQL तालिका में प्राथमिक कुंजी कैसे जोड़ें?

  5. उबंटू पर MySQL कैसे स्थापित करें