[ad_1]
मुझे नीचे दी गई समस्या का सामना करना पड़ रहा है।
उद्धरण:घातक त्रुटि: ध्यान में न आया लेखन त्रुटि: mysqli_query(): तर्क #1 ($mysql) mysqli प्रकार का होना चाहिए, C:\location:18 में दिया गया बूल स्टैक ट्रेस: #0 C:\location(18): mysqli_query(true, ‘ ‘हमसे…’ चुनें*) #1 {मुख्य} पंक्ति 18 पर सी:\स्थान में डाला गया
कृपया इसे सुलझाएं.
नीचे कोड है.
<?php $dbhost="localhost"; $dbuser = "root"; $dbpass = "password"; $mysql = mysqli_connect($dbhost, $dbuser, $dbpass, 'userlogin'); if($mysql = true){ echo "Connection Succesful!"; } else{ die(mysqli_error); } if(mysqli_query($mysql, 'select*from `user info`')){ echo "<br> ERROR SOLVED FOREVER!"; }else{ echo "<h1><br><br> THIS IS AN ERROR!".mysqli_error'</h1>' } ?>
नोट: समस्या केवल लाइन 18 पर है। इसने कनेक्शन परीक्षण के लिए सफलतापूर्वक काम किया।
धन्यवाद।
मैंने क्या प्रयास किया है:
$mysql को mysqli_connect($dbhost, $dbuser, $dbpass, ‘userlogin’) से बदलना; इसके बजाय mysqli_query() फ़ंक्शन के अंदर पंक्ति 18 में। . इसने काम किया।
समाधान 1
यदि संदेह हो तो मैनुअल पढ़ें: PHP: mysqli_connect – मैनुअल[^] इसे कहते हैं:
उद्धरण:यदि mysqli अपवाद मोड सक्षम नहीं है और कनेक्शन विफल हो जाता है, तो mysqli_connect() किसी ऑब्जेक्ट के बजाय गलत रिटर्न देता है।
यह वैसा नहीं है जैसे “यदि यह सफल होता है, तो यह वापस आ जाता है true
“.
यदि यह सफल होता है, तो यह एक कनेक्शन ऑब्जेक्ट लौटाता है जिसका आप उपयोग कर सकते हैं, बूलियन मान नहीं।
जांचने के लिए अपना परीक्षण बदलें false
के बजाय true
समाधान 2
अगर(जारी($_SESSION[‘check_login’]))
{
हेडर (‘स्थान: डैशबोर्ड.php’);
}
[ad_2]
コメント