2016-04-22 21 views
0

das ist keine Frage, ich brauche deine Hilfe. Ich habe ähnliche Threads gelesen, aber ich konnte das Problem in meinem Code nicht beheben. Könnten Sie bitte die richtige Lösung geben?PHP Mysqli Fehler: mysqli_query() erwartet Parameter 1 zu sein mysqli, boolean gegeben

<?php 
/*variable declaration*/ 
$host="localhost"; 
$user="root"; 
$pass=""; 
$dbname='mydatabase'; 

/*connection to mysql server*/ 
$connect = mysqli_connect($host,$user,$pass); 

/*selecting database*/ 
$selectdb=mysqli_select_db($connect,$dbname); 

if(!$selectdb){ 
    echo 'Failed to connect. Wrong username or database.'; 
}else{ 
    echo 'Connection successful.'; 
} 

/*creating task*/ 
$query = "SELECT 'Name', 'Password' FROM 'db' ORDER BY 'id'"; 

if(mysqli_query($selectdb,$query)){ 
echo 'Success'; 
}else{ 
echo '<br>Failed'; 
} 
?> 

enter image description here

+3

'$ verbinden' benötigen statt '$ selectdb' in' mysqli_query ($ selectDB, $ query) ' –

+0

Pass nur einen Parameter mysqli_query ($ selectDB) zur Verfügung zu stellen; anstelle von mysqli_query ($ selectdb, $ query); –

+0

@ManishaChaudhary mysqli_query (...) erwartet immer 2 Parameter. Aber er muss die richtigen benutzen. – DocRattie

Antwort

0

Ändern

$query = "SELECT 'Name', 'Password' FROM 'db' ORDER BY 'id'"; 

Um

$query = "SELECT `Name`, `Password` FROM db ORDER BY 'id'"; 

Sie können nicht nur die Zitate auf Spaltennamen verwenden, um auf die Abfrage, entweder Verwendung Backticks oder gar nichts.

+0

Dies ist wahr und eine Syntax-Fehler, aber nicht die Ursache für den Fehler er hat. – DocRattie

+0

@William Madede Das Problem wurde gelöst, indem Back-Ticks anstelle von Anführungszeichen verwendet wurden. Übrigens hast du Back-Ticks auf [db] verpasst. – 007mrviper

+0

@ 007mrviper super danke ... fertig –

0
if(mysqli_query($connect,$query)){... 

Dabei müssen Sie die $connect und nicht die $selectdb verwenden.

0
<?php 
/*variable declaration*/ 
$host="localhost"; 
$user="root"; 
$pass=""; 
$dbname='mydatabase'; 
$connect = mysqli_connect($host,$user,$pass,$dbname); 

/*I avoided this line & used $connect inside if() statement which worked perfectly*/ 
//$selectdb = mysqli_select_db($connect,$dbname); 

if(!$connect){ 
    echo 'Failed to connect. Wrong username or database.'; 
}else{ 
    echo 'Connection successful.'; 
} 

/*creating task*/ 
$query = "SELECT `Name`, `Password` FROM `db` ORDER BY `id`"; 

if($query_run = mysqli_query($connect,$query)){ 
echo 'Success'; 
}else{ 
echo '<br> Failed'; 
} 
Verwandte Themen