我想用PHP获取服务器上某个特定帐户上所有数据库的列表,因此我使用了从这个链接获取的以下PHP/MySQL:PHP - Get list of databases names
$db_conn = mysqli_connect('localhost', 'username', 'password');
//get a list of databases in the account
$result = mysqli_query($db_conn,"SHOW DATABASES");
//display results
while ($row = mysqli_fetch_array($result)) {
echo "database name - ".$row[0]."<br>";
}
这部分工作得很好。但现在我想得到这些数据库中每个表中一个特定行的值,所有数据库都包含完全相同的表,因此包含相同的行。
所以在while{}中,我试图放置一个SELECT语句:
$sql = "SELECT option_value FROM sweb_options WHERE option_name = 'siteurl'";
然后回显$sql,但除了输出语句之外,这没有做任何事情。你知道我怎么做吗?
非常感谢。
最佳答案
这样的做法应该管用:
while ($row = mysqli_fetch_array($result)) {
$sql = "SELECT option_value FROM {$row[0]}.sweb_options WHERE option_name = 'siteurl'";
$result2 = mysqli_query($db_conn, $sql);
// check for success in case table doesn't have option_value column
if ($result2) {
$row2 = mysqli_fetch_assoc($result2);
echo $row2['option_value'];
}
}
关于php - 从服务器上每个数据库的一个表中选择数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55251869/