Fatal error: call to undefined method mysqli :: error ()

I can connect, but when it comes to the prepared statement, this is the error I received. something is wrong?

The code:

// Open connection $db = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE); //check connection if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } // Create statement object $stmt = $db->stmt_init(); // sql statement $sql = "INSERT INTO ch_users ('uid','admin','password','directory','size','format','locationid') VALUES (?, 1, ?, ?, ?, ?, 1)"; // Create a prepared statement $stmt = $db->prepare($sql) or die($db->error()); 
+2
php mysqli
Aug 14 '12 at 4:45
source share
2 answers

For those who stumbled upon this page.

The error you get from

 Fatal error: Call to undefined method mysqli::error() 

This is because we need to access the error as a variable, not as a function

therefore the correct code

 if(! empty( $mysqli->error ) ){ echo $mysqli->error; // <- this is not a function call error() } 

Hope this helps someone.

+6
Aug 17 '15 at 8:27
source share

My bad, there shouldn't be quotes in sql statements for column fields. Now it works!

0
Aug 14 2018-12-12T00:
source share



All Articles