PHP/MYSQLI: mysqli_query fails in PHP

2019-03-06 14:39发布

问题:

First off, I'm a total noob in mysql(i) language and know a little more than the basics of PHP.

Note: I do not manage or own / have access to the server on which the webpage currently is hosted. I can however access the phpMyAdmin page.

That said, I've got a webpage on which I am trying out some stuff. Right now I'm trying to make a log-in page linked to a database.

Now, behold the code:

$mysql_host = "localhost";
$mysql_user = "my_user";
$mysql_database = "my_database";
$mysql_password = "my_password";

$table = "my_tablename";

// Create connection 
$con=mysqli_connect($mysql_host,$mysql_user,$mysql_password,$mysql_database); 

// Check connection 
if (mysqli_connect_errno($con)) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
}

// sending query
$result = mysqli_query("SELECT * FROM my_tablename");
if (!$result) {
    echo "Query to show fields from table failed! :-(";
}

Now, here comes the actual problem. As soon as I launch the page it will give me my "Query to show fields from table failed!" error message. But when I enter the same query on the phpMyAdmin 'SQL' tab, I get the wanted results. How come the webpage gives me an error, while the phpMyAdmin gives me the results, and, how do I solve it?

回答1:

Use correct syntax:

$result = mysqli_query($con, "SELECT * FROM my_tablename");

You forgot to link current mysqli connection. First parameter is link - which mysqli connection you want to use (good for multiple conns) and then the second is your query.