दिलचस्प पोस्ट
मैं जावास्क्रिप्ट में वर्तमान तारीख कैसे प्राप्त करूं? क्या एक जिन्जा चर का गुंजाइश एक आंतरिक ब्लॉक में फैल सकता है? जावा में गणितीय अभिव्यक्तियों को पार्स करने के लिए एक अच्छा पुस्तकालय क्या है? कन्वर्ट_मैंसेसेकपीपीपी के लिए एक गाइड "यदि" महंगा है? एआरबी टेम्पलेट्स में एचटीएमएल से बचने को अक्षम करें जावा फ़ाइल – एक फ़ाइल खोलें और इसे लिखें गिट: छिपी हुई निर्देशिकाओं की उपेक्षा कैसे करें? नोहुप और डेमन में क्या अंतर है? php त्रुटि शामिल नहीं पथ खोजना मैं यूआरएल में उत्पन्न "सार्वजनिक / इंडेक्स.एफ़पी" कैसे निकाल सकता हूं laravel? कौन सा स्विंग घटक विधियाँ धागे सुरक्षित हैं? क्या लूप के लिए विभिन्न प्रकार के दो चर को घोषित करना संभव है? कैसे एक विधि निर्धारित समय पर परिभाषित किया जाता है? एंड्रॉइड स्टूडियो – एसवीएन शाखा से मर्ज करने में असमर्थ

चेतावनी: mysql_fetch_array (): आपूर्ति तर्क एक मान्य MySQL परिणाम नहीं है

इसे चलाने की कोशिश करते समय मुझे त्रुटि मिलती है:

<?php require_once('includes/DbConnector.php'); $connector = new DbConnector(); $result = $connector->query('SELECT title,content FROM staff_vacancies ORDER BY ordering LIMIT 0,100'); // Get an array containing the results. // Loop for each item in that array while ($row = $connector->fetchArray($result)){ echo $row['title'].'</h3>'; echo $row['content']; } ?> 

मेरे पास एक लिंक की गई फ़ाइल है: DbConnector.php:

 <?php //////////////////////////////////////////////////////////////////////////////////////// // Class: DbConnector // Purpose: Connect to a database, MySQL version /////////////////////////////////////////////////////////////////////////////////////// require_once 'SystemComponent.php'; class DbConnector extends SystemComponent { var $theQuery; var $link; //*** Function: DbConnector, Purpose: Connect to the database *** function DbConnector(){ // Load settings from parent class $settings = SystemComponent::getSettings(); // Get the main settings from the array we just loaded $host = $settings['dbhost']; $db = $settings['dbname']; $user = $settings['dbusername']; $pass = $settings['dbpassword']; //the settings $host = 'localhost'; $db = 'xxx'; $user = 'xxx'; $pass = 'xxx'; // Connect to the database $this->link = mysql_connect($host, $user, $pass); mysql_select_db($db); register_shutdown_function(array(&$this, 'close')); } //*** Function: query, Purpose: Execute a database query *** function query($query) { $this->theQuery = $query; return mysql_query($query, $this->link); } //*** Function: getQuery, Purpose: Returns the last database query, for debugging *** function getQuery() { return $this->theQuery; } //*** Function: getNumRows, Purpose: Return row count, MySQL version *** function getNumRows($result) { return mysql_num_rows($result); } //*** Function: fetchArray, Purpose: Get array of query results *** function fetchArray($result) { return mysql_fetch_array($result); } //*** Function: close, Purpose: Close the connection *** function close() { mysql_close($this->link); } } ?> 

क्या कोई जानता है कि परेशानी क्या है?

वेब के समाधान से एकत्रित समाधान "चेतावनी: mysql_fetch_array (): आपूर्ति तर्क एक मान्य MySQL परिणाम नहीं है"

आपकी क्वेरी में एक समस्या होनी चाहिए जिसके कारण $ परिणाम एक अमान्य संसाधन हो सकता है

लाइन के बाद mysql_error () के लिए जांचने की कोशिश करें जिस पर आप अपनी क्वेरी चलाते हैं।

संपादित करें:

वास्तव में, मैं आपके डीबीसीनेटक्वाटर वर्ग फ़ंक्शन क्वेरी () को निम्नलिखित की तरह कुछ बदल दूंगा, ताकि आपके पास एक गलत क्वेरी होने पर पहचान योग्य त्रुटि फेंक दी जाए:

 function query($query) { $this->theQuery = $query; $queryId = mysql_query($query,$this->link); if (! $queryId) { throw new Exception(mysql_error().". Query was:\n\n".$query."\n\nError number: ".mysql_errno(); } return $queryId; } 

यह त्रुटि आपकी क्वेरी असफल रही है mysql_query() गलत होने पर झूठ देता है, तो आप mysql_fetch_array() गलत संदेश mysql_fetch_array() रहे हैं जो गलत संदेश को ट्रिगर कर रहे हैं।

अनुपलब्ध / गलत तालिका या फ़ील्ड के कारण आपकी क्वेरी विफल हो सकती है विस्तृत त्रुटि देखने के लिए, mysql_error का परिणाम प्रिंट करें ()

mysql_* लाइब्रेरी बहिष्कृत है MySQLi या पीडीओ में अपग्रेड करने की सिफारिश की गई है

 // Load settings from parent class $settings = SystemComponent::getSettings(); // Get the main settings from the array we just loaded $host = $settings['dbhost']; $db = $settings['dbname']; $user = $settings['dbusername']; $pass = $settings['dbpassword']; //the settings $host = 'localhost'; $db = 'xxx'; $user = 'xxx'; $pass = 'xxx'; 

क्या आप कनेक्शन वार्स को पुन: असाइन करने का मतलब था? या क्या आप स्टब कोड की कुछ पंक्तियां भूल गए हैं? या बस एक उदाहरण दिखाने के लिए कि $ सेटिंग्स क्या हैं?

कृपया mysql_error () से त्रुटि प्रदान करें इसके बिना मैं केवल अनुमान लगा सकता हूं … अपने क्षेत्र के नामों से बचने का प्रयास करें?

 $result = $connector->query('SELECT `title`,`content` FROM `staff_vacancies` ORDER BY `ordering` LIMIT 0,100'); 

आपकी क्वेरी में एक समस्या होनी चाहिए जिसके कारण $ परिणाम एक अमान्य संसाधन हो सकता है

इसे इस्तेमाल करो

 <?php require_once('includes/DbConnector.php'); $connector = new DbConnector(); $result = $connector->query('SELECT title,content FROM staff_vacancies ORDER BY ordering LIMIT 0,100'); // Get an array containing the results. // Loop for each item in that array if($result){ while ($row = $connector->fetchArray($result)){ echo $row['title'].'</h3>'; echo $row['content']; } } ?> 

मुझे यह एक पद में मिल रहा है, मेरे लिए मेरी समस्या का हल। SLDs।

हाँ, उत्तर सरल है, इस्तेमाल किया जाने वाला प्रश्न सही परिणाम नहीं है क्योंकि यह एक बीती बात के अंदर एक क्वेरी है, इसलिए यह ठीक है: सभी लाइनों को ढूंढें जो इस तरह दिखते हैं:

 mysql_fetch_array(mysql_query("...snip...";-) ); 

और इसके सामने एक "@" जोड़ें तो ऐसा लगता है:

 @mysql_fetch_array(mysql_query("...snip...";-) ); 

तो निम्न पंक्तियों के लिए एक ही काम करें .. कोड:

 mysql_num_rows(mysql_query("...snip...";-) ); 

इसके ऊपर "@" जोड़कर ऊपर दिए गए एक ही चरण को पूरा करें ताकि ऐसा लगे:

 @mysql_num_rows(mysql_query("...snip...";-) ); 

यह सब यह कहता है "जबकि yyy के भीतर xxx कर रहा है" अन्यथा, यह लापता परिणाम मूल्य के कारण मर चुका है। यह एक PHP बात है ..

एक जादू की तरह काम करता है, मुझे पूरे कोड को अलग करने के लिए 5 मिनट का समय लगा और इसे आधुनिक बिल्ले में थप्पड़ मारा, एक ही डाटाबेस को शेयर करता है और मेरे लिए पूरी तरह काम करता है