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

चेतावनी:mysql_result() पैरामीटर 1 को संसाधन, बूलियन दिए जाने की अपेक्षा करता है

समस्या यह है कि mysql_query() परिणाम संसाधन के बजाय एक बूलियन लौटा रहा है। ऐसा होने के दो कारण हो सकते हैं:

  1. आपने ऐसी क्वेरी की जो परिणाम सेट के बजाय सफलता/असफलता लौटाती है (उदा. UPDATE )
  2. आपकी क्वेरी विफल

आपके मामले में क्वेरी विफल रही। इसके विफल होने का कारण यह है कि आप PHP स्ट्रिंग में बैक टिक्स से बच गए हैं जहाँ आपको इसकी आवश्यकता नहीं थी।

आपकी पंक्तियाँ इस तरह दिखती हैं:

$siteTitle = mysql_result(mysql_query("SELECT \`siteTitle\` FROM siteSettings"), 0);

जब उन्हें बस यही होना चाहिए:

$siteTitle = mysql_result(mysql_query("SELECT `siteTitle` FROM siteSettings"), 0);

अब, कुछ साइड नोट:

  • नया कोड न लिखें जो mysql_* . का उपयोग करता हो कार्य। उन्हें बहिष्कृत कर दिया गया है और अंततः PHP से हटा दिया जाएगा। MySQLi का इस्तेमाल करें या PDO इसके बजाय (मैं व्यक्तिगत रूप से पीडीओ, वाईएमएमवी की अनुशंसा करता हूं)
  • इस तरह से नेस्टिंग डेटाबेस फ़ंक्शन आपके कोड को लिखने का विशेष रूप से अच्छा तरीका नहीं है। प्रत्येक फ़ंक्शन कॉल के बाद स्पष्ट रूप से त्रुटियों की जांच करना बेहतर है।

उदाहरण के लिए:

$result = mysql_query("SELECT somecol FROM sometable");
if (!$result) {
  // Handle error here
}
// Now process the result
  • आपको अपने प्रश्नों में या तो सभी पहचानकर्ता, या कोई नहीं, उद्धृत करना चाहिए (अधिमानतः सभी)। केवल कुछ को उद्धृत करने से पढ़ना कठिन हो जाता है।

उदा.

SELECT `siteTitle` FROM `siteSettings`



  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 त्रुटि 1436:थ्रेड स्टैक ओवररन, साधारण क्वेरी के साथ

  2. क्या MySQL का उपयोग करके एकाधिक कॉलम द्वारा ग्रुप करना संभव है?

  3. MySQL में चालू वर्ष, चालू माह और वर्तमान दिन प्राप्त करें

  4. MySQL CHAR () बनाम T-SQL CHAR ():क्या अंतर है?

  5. MySQL:पंक्तियों की प्रतिलिपि कैसे करें, लेकिन कुछ फ़ील्ड बदलें?