काम नहीं कर रहा है मैं अपने कोडइग्निटर एप्लिकेशन में पीडीओ MySQL ड्राइवर का उपयोग करने की कोशिश कर रहा हूं। यह मेरा डेटाबेस config है:कोडइग्निटर पीडीओ डेटाबेस ड्राइवर
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'testdatabase';
$db['default']['dbdriver'] = 'pdo';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
हालांकि, जब मैं एक नियंत्रक लोड मैं इस त्रुटि हो रही है:
Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in C:\xampp\htdocs\testsite\system\database\drivers\pdo\pdo_driver.php:114
मैं pdo_driver.php
में die($this->hostname);
का उपयोग कर डेटा स्रोत की जाँच की है और यह के रूप में बाहर आ रहा है :
localhost;dbname=testdatabase
इसलिए यह सही डेटाबेस नाम प्राप्त कर रहा है। डेटाबेस मौजूद है और मेरे पास MySQL चल रहा है।
क्या गलत हो सकता है? धन्यवाद।
Sidenote: मैं हाल ही में नए संस्करण (2.1.1) के लिए बदलाव का पढ़ सकते हैं और वहाँ पीडीओ चालक के बारे में कुछ bugfixes हैं। आप इसे –
मार्टिन की जांच करना चाहेंगे, मुझे एक ही त्रुटि मिल रही है: 'घातक त्रुटि: संदेश के साथ अपूर्ण अपवाद' पीडीओएक्सप्शन 'में' ड्राइवर नहीं मिला '... ((कई डेटाबेस और कोर डीआईआर/फ़ाइलें सूचीबद्ध))। .. लाइन 114' पर syetem/डेटाबेस/ड्राइवर/pdo/pdo_driver.php। मैं इतना नया हूं कि मैं यह भी नहीं बता सकता कि आपका हैक मेरी मदद करेगा या नहीं। कहां और क्या ** आपने ** .../system/डेटाबेस/ड्राइवर/pdo/pdo_driver.php' में संपादित किया था? मैं विन्यास विषयों पर सुंदर नौसिखिया हूँ। मुझे लगता है कि सीआई v.1.1.1 में पीडीओ काम करने के लिए सिस्टम फ़ाइल में एक हैक की आवश्यकता है, है ना? क्यों (अनुमानतः सबसे अधिक) दूसरों को आपके द्वारा उल्लेख किए गए हैक की आवश्यकता नहीं है? – govinda
@ गोविंदा, मैंने क्लास कन्स्ट्रक्टर में 'else {...}' के ठीक बाद 81 लाइन पर मेरा किया था। यह अजीब लगता है कि आपको इसे बिल्कुल हैक करने की ज़रूरत है लेकिन मुझे ठीक होने के बाद इसमें कुछ भी गलत नहीं मिला है। –