-1

我正在学习 PHP,并且正在编写一个连接到我的数据库并提取一些数据的脚本。

我在本地主机上运行的网站是一个 PHP 驱动的 CMS。

一段脚本在这里

DEFINE ('DB_USER','myname');
DEFINE ('DB_PASSWORD','somepass123');
DEFINE ('DB_HOST','localhost');
DEFINE ('DB_NAME','sitename');


// make the db connection
$dbc = @mysqli_connect('DB_HOST','DB_USER','DB_PASSWORD','DB_NAME')
    OR die ('Could not connect to mysql: ' . mysqli_connect_error());

当我加载一个使用 PHP 绘制的页面时,我收到以下错误,其中输出数据应该是:

无法连接到 mysql:未知的 MySQL 服务器主机 'DB_HOST' (1)

我对 SO 进行了一些研究,并进行了一些谷歌搜索。一个可疑的问题可能是 DB_HOST 在其他地方定义。这合理吗?我没有足够的经验知道这是否是正确的道路。

我确实在 config/database.php 文件中找到了这个,我不确定它是否相关:

$config['default'] = array(
    'benchmark' => TRUE,
    'persistent' => FALSE,
    'connection' => array(
        'type' => 'mysqli',
        'user' => 'myname',
        'pass' => 'somepass123',
        'host' => 'localhost',
        'port' => FALSE,
        'socket' => FALSE,
        'database' => 'sitename',

我将如何确定下一步?这是一个常见的错误吗?有没有人有任何指示?

4

1 回答 1

4

您需要在常量周围加上单引号:

$dbc = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME)
         OR die ('Could not connect to mysql: ' . mysqli_connect_error());

您还应该避免@在函数前面使用。如果您希望抑制错误,请使用正确的错误处理。

于 2013-08-19T17:19:47.260 回答