简体   繁体   中英

Why does my mysqli_query return false?

I realise there are a lot of questions like this here, but none of them seem to help me. The problem is as follows:

I have a website with an SQL Database, and now I am developing an application that reads the data. I've read that the best way to do that is a web service, so I'm in the process of writing one now. First, I'm trying to get all the data to display on a webpage, for testing purposes. I have the following code now:

<?php
$servername = "localhost";
$username = "myusername";
$password = "mypassword";
$db = "mydatabase";

// Create connection
$conn = new mysqli($servername, $username, $password, $db, 3306);

// Check connection
if (!$conn){echo "Not connected";} else {echo "connected";}

$query = "SHOW TABLES FROM mydata";
$result = mysqli_query($query) or die(" but not executed" . mysqli_error());
?> 

When I save this and go to mywebsite/test.php, it displays the following:

connected but not executed. That means that it connects right, but the mysqli_query() returns false. However, mysqli_error is empty.

This is the entire test.php file. Am I missing something?

"Am I missing something?"

Yes, db connection arguments to both mysqli_query() and mysqli_error() .

RTM's

It's all in there.

  • Btw, this is a community wiki. No rep should come of this.

If that still doesn't work, then you may have to remove the port , 3306 .

Your $query appears to say

SHOW TABLES FROM mydata

However, your database is actually called mydatabase, as demonstrated on the $db line.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM