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

डेटाबेस के साथ PHP कनेक्शन त्रुटि

mysqli_select_db फ़ंक्शन, प्रक्रियात्मक API का उपयोग करते समय आपको पहले पैरामीटर के रूप में एक वास्तविक कनेक्शन पास करने की आवश्यकता होती है, जैसा कि मैन पेज पर दिखाया गया है . यह कनेक्शन, या लिंक, वही है जो mysqli_connect . है लौटाता है, इसलिए आपको mysqli_connect को अनदेखा नहीं करना चाहिए। रिटर्न , बल्कि इसे एक वेरिएबल को असाइन करें।
फ़ंक्शन का हस्ताक्षर आपको यह सब स्पष्ट रूप से बताता है, इसलिए कृपया, RTM . यहां कुछ कॉपी-पेस्ट किए गए एक्सर्ट हैं:

                            \/=============================|
bool mysqli_select_db ( mysqli $link , string $dbname )   ||
//returns bool         argument 1       argument 2        ||
mysqli mysqli_connect ([...])                             ||
//returns type mysqli  accepts vast number of arguments   ||
              //                                          ||
              |======== useful here =======================|

इसका मतलब है कि आपको लिखना होगा:

$db = mysqli_connect('localhost', 'root', '');
mysqli_select_db($db, 'video_system');

मैनुअल &&सिग्नेचर शो की तरह, यह mysqli_select_db एक बूल लौटाता है। true इसका मतलब है कि डीबी सफलतापूर्वक चुना गया था, false विफलता को दर्शाता है। फ़ंक्शन रिटर्न मानों की जांच करने . की आदत डालना सबसे अच्छा है . चाहे वह कितनी ही तुच्छ क्यों न लगे। तो:

$db = mysqli_connect('localhost', 'root', '');
if (!mysqli_select_db($db, 'video_system'))
{//if return value is false, echo error message and exit script
    echo 'Failed to select db "video_system": ', mysqli_error($db), PHP_EOL;
    $db = null;//optional, but generally safer
    exit(1);//stop execution
}
//db selected, get to work here

लेकिन आप पसंद के डीबी नाम को mysqli_connect पर पास करके, इस दूसरे फ़ंक्शन कॉल को आसानी से छोड़ सकते हैं। बंद से कार्य:

$db = mysqli_connect('127.0.0.1', 'root', '', 'video_system');

जो आपको एक अतिरिक्त फ़ंक्शन कॉल के ऊपरी हिस्से को बचाता है, जो प्रदर्शन में थोड़ा सुधार करता है। मैंने localhost भी बदल दिया है स्ट्रिंग को आईपी पते पर 127.0.0.1, जो मदद भी कर सकता है, क्योंकि आईपी का उपयोग करने का मतलब है कि स्ट्रिंग को संबंधित आईपी पते पर हल करने की आवश्यकता नहीं है। कुल मिलाकर, मुझे लगता है कि यह सबसे अच्छा है कि आप कुछ समय बिताएं दस्तावेज पढ़ना




  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. किसी अन्य तालिका और भिन्न डेटाबेस से तालिका अद्यतन करें

  3. क्रोनजॉब हर मिनट

  4. कोडनिर्देशक - डेटाबेस:एकल अद्यतन क्वेरी के साथ एकाधिक तालिकाओं को कैसे अद्यतन करें

  5. JDBC और MySQL के साथ संचार लिंक विफलता का समाधान