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

mysqli या मरना, क्या इसे मरना है?

<ब्लॉकक्वॉट>

क्या इसे मरना है

इसके विपरीत, इसे or die() हमेशा।
PHP खराब आनुवंशिकता की भाषा है। बहुत खराब आनुवंशिकता। और or die() एक त्रुटि संदेश के साथ सबसे खराब मूल सिद्धांतों में से एक है:

  • डाई एक त्रुटि संदेश बाहर फेंकता है, एक संभावित हमलावर को कुछ सिस्टम आंतरिक प्रकट करता है
  • यह निर्दोष उपयोगकर्ताओं को अजीब संदेशों के साथ भ्रमित कर रहा है और उनके साथ काम करने के लिए कोई इंटरफ़ेस नहीं छोड़ रहा है, इसलिए वे शायद बस छोड़ देंगे।
  • यह स्क्रिप्ट को बीच में ही मार देता है, इसलिए यह फटी हुई डिज़ाइन (या बिल्कुल भी डिज़ाइन नहीं) दिखा सकता है (यानी उपयोगकर्ता द्वारा अनुरोधित पृष्ठ का अधूरा रेंडर)
  • स्क्रिप्ट को अपरिवर्तनीय रूप से मारना। जबकि फेंके गए अपवाद को पकड़ा जा सकता है और इनायत से संभाला जा सकता है
  • die() आपको त्रुटि के स्थान का कोई संकेत नहीं देता . और अपेक्षाकृत बड़े एप्लिकेशन में इसे ढूंढना काफी कठिन होगा।

इसलिए, कभी भी die() का उपयोग न करें MySQL त्रुटियों के साथ, अस्थायी डिबगिंग के लिए भी :बेहतर तरीके हैं।

त्रुटि के लिए मैन्युअल रूप से जाँच करने के बजाय, अपने कनेक्शन कोड में निम्न पंक्ति जोड़कर, त्रुटि पर अपवादों को फेंकने के लिए बस mysqli को कॉन्फ़िगर करें

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

और उसके बाद बस हर mysqli कमांड को बिना किसी or die के, जैसा है वैसा ही लिखें या कुछ और:

$result = mysqli_query($link, $sql);

यह कोड त्रुटि के मामले में एक अपवाद फेंक देगा और इस प्रकार आपको हमेशा अतिरिक्त कोड की एक पंक्ति के बिना हर समस्या के बारे में सूचित किया जाएगा।

अपने कोड को अधिक साफ-सुथरा बनाते हुए अपनी त्रुटि रिपोर्टिंग उत्पादन को तैयार, समान और समग्र रूप से समझदार बनाने के तरीके के बारे में अधिक विस्तृत विवरण, आप मेरे लेख PHP त्रुटि रिपोर्टिंग



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में सिंगल कोट्स, डबल कोट्स और बैकटिक्स

  2. मैक ओएस एक्स - पर्यावरण त्रुटि:mysql_config नहीं मिला

  3. मैं PHP का उपयोग करके MySQL डेटाबेस से छवियों को कैसे संग्रहीत और पुनर्प्राप्त कर सकता हूं?

  4. MySQL में एक स्ट्रिंग और एक संख्या को संयोजित करें

  5. MySQL का उपयोग करने के लिए Django की स्थापना