मैंने नेट खोजा है और अब तक जो मैंने देखा है वह यह है कि आप उपयोग कर सकते हैं mysql_
और mysqli_
साथ में अर्थ:
<?php
$con=mysqli_connect("localhost", "root" ,"" ,"mysql");
if( mysqli_connect_errno( $con ) ) {
echo "failed to connect";
}else{
echo "connected";
}
mysql_close($con);
echo "Done";
?>
या
<?php
$con=mysql_connect("localhost", "root" ,"" ,"mysql");
if( mysqli_connect_errno( $con ) ) {
echo "failed to connect";
}else{
echo "connected";
}
mysqli_close($con);
echo "Done";
?>
मान्य हैं, लेकिन जब मैं इस कोड का उपयोग करता हूं तो मुझे जो मिलता है:
Connected
Warning: mysql_close() expects parameter 1 to be resource, object given in D:\************.php on line 9
Done
पहले और उसी को छोड़कर mysqli_close()
। दूसरे के लिए।
समस्या क्या है? क्या मैं उपयोग नहीं कर सकता mysql_
और mysqli
साथ में? या यह सामान्य है? क्या मैं जांच कर सकता हूं कि क्या कनेक्शन बिल्कुल वैध हैं? ( if(mysq...)
)
mysql_*
कार्यों का पूरी तरह से उपयोग करने से बचना चाहिए । वे त्रुटि-रहित और असुरक्षित हैं, और उन्हें जल्द ही PHP से हटा दिया जाएगा (वे इस समय पदावनत के रूप में चिह्नित हैं)। [यह महान उत्तर] [०] और अधिक विस्तार से बताते हैं कि वे बुरे क्यों हैं। [०]: stackoverflow.com/a/12860046/1055295
mysqli_*
कार्यों के साथ बुरा कोड और mysql_*
लोगों के साथ अच्छा कोड लिख सकते हैं। लेकिन बाद की श्रेणी को पदावनत के रूप में चिह्नित किया गया है क्योंकि यह कार्यों का अवर सेट है, ओओ-शैली के आह्वान या यहां तक कि तैयार किए गए बयानों का समर्थन करने में सक्षम नहीं है (केवल दो उदाहरणों को नाम देने के लिए)। एक ही काम करने के लिए दो उपकरणों का विकल्प दिया गया है, जिनमें से एक स्पष्ट रूप से लंबे समय में बेहतर है और अधिक लचीला है, सही उत्तर स्पष्ट नहीं है?