【问题标题】:No Database Selected - PHP & MySQL未选择数据库 - PHP & MySQL
【发布时间】:2012-01-20 18:12:56
【问题描述】:

我正在尝试连接到我的数据库,但在运行代码时出现错误。谁能告诉我我的 PHP 代码中还有什么错误?谢谢。

Error: No database selected

PHP 代码:

include('.conf.php');
$prof = $_GET['profile'];
$prof = addslashes(htmlentities($prof));
$query = "SELECT * FROM aTable where id = '".mysql_real_escape_string($prof)."'";
$info_array = mysql_query($query, $con) or die (mysql_error()).;

while($row = mysql_fetch_array( $info_array )) 
{
    echo $row['num1'];
    echo "</br>";
    echo $row['num2'];
    echo "</br>";
    echo $row['num3'];
    echo "</br>";
    echo $row['num4'];
};

mysql_close($con);

.conf.php 文件:

<?php
    $conf['db_hostname'] = "xxx";
    $conf['db_username'] = "xxx";
    $conf['db_password'] = "xxx";
    $conf['db_name'] = "xxx";
    $conf['db_type'] = "mysql";

    $con = mysql_connect('xxx', 'xxx', 'xxx') or die (mysql_error());
    $db  = mysql_select_db("aTable", $con);
?>

【问题讨论】:

  • mysql_select_db("aTable", $con); aTable 是您的数据库的名称吗?出于某种原因听起来像一个表名:)
  • 尝试将or die (mysql_error()); 放在select_db() 行上,看看它是否输出任何错误。
  • 你检查过mysql_select_db()的返回值(即$db)是否为FALSE?
  • @JamWaffles 错误是Access denied for user 'xxx'@'%' to database 'aTable'
  • @JosephTorraca 那么你就有了——你需要在数据库aTable上授予用户xxx的访问权限

标签: php mysql


【解决方案1】:

除非您的密码不正确并且需要修复它,否则请运行GRANT 语句来授予您的数据库用户访问权限:

GRANT ALL PRIVILEGES ON aTable.* TO xxx@localhost IDENTIFIED BY 'password_for_xxx';

以上授予所有权限。通常最好仅限于需要的内容。例如,如果你只打算 SELECT,而不是修改数据,

GRANT SELECT ON aTable.* TO xxx@localhost IDENTIFIED BY 'password_for_xxx';

更新

由于您已将数据库名称标识为 dedbmysql,请将您的 mysql_select_db() 调用更改为:

$db = mysql_select_db("dedbmysql", $con);

在此之后,上面的GRANT 语句可能是不必要的,因为您的主机可能已经计算出正确的数据库权限。

【讨论】:

  • 我只是尝试在 PHPmyAdmin 上运行它,它给了我这个错误:#1044 - Access denied for user 'xxx'@'%' to database 'xxx'
  • @JosephTorraca 您的数据库的实际名称是什么? aTable 明明是表的名字,但是数据库必须有不同的名字。
  • @JosephTorraca 请参阅上面的更改。你需要修复mysql_select_db()
【解决方案2】:

我遇到了这个问题,并通过在表名前加上数据库名来解决它,所以

 select * from database.table

【讨论】:

  • 谢谢;这让我的陈述变得更加容易。
猜你喜欢
  • 2014-03-25
  • 2017-11-03
  • 2011-02-16
  • 1970-01-01
  • 2012-12-06
  • 2013-11-24
  • 2015-06-13
  • 2014-05-14
相关资源
最近更新 更多