【发布时间】:2015-05-02 03:14:32
【问题描述】:
我正在尝试连接到名为 BetaPoints 的数据库。所有凭据都位于一个php文件名EstablishAccess.php中,格式为
<?php
define (DB_USER, "BetaPoints");
define (DB_PASSWORD, "password!");
define (DB_DATABASE, "BetaPoints");
define (DB_HOST, "hostname");
?>
我正在尝试用这个连接到数据库
$connctn=mysql_connect($DB_HOST,$DB_USER,$DB_PASSWORD)
or die("cannot connect to database");
mysql_selectdb('BetaPoints')
or die('cannot select database');
我收到此错误:
注意:未定义变量:/home/content/06/8274306/html/beta/mysuperscript.php 第 6 行中的 DB_HOST
注意:未定义变量:/home/content/06/8274306/html/beta/mysuperscript.php 第 6 行中的 DB_USER
注意:未定义变量:/home/content/06/8274306/html/beta/mysuperscript.php 第 6 行中的 DB_PASSWORD
警告:mysqli_connect() [function.mysqli-connect]: (HY000/2002): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home /content/06/8274306/html/beta/mysuperscript.php 在第 6 行 无法连接数据库
我已经在我的变量中查找错误,并且我已经使用我为这些变量定义的凭据多次登录,但我仍然无法找到错误。
它说当我知道它不是本地数据库时,我无法连接到本地 MySQL 数据库。
如果有人有任何建议,请在下面发布。我正在寻求帮助,以查找有关问题所在以及我可以采取的任何解决方案的更多信息。
【问题讨论】:
-
向它传递一个额外的参数
mysql_selectdb('BetaPoints', $connctn)- 请使用最新的 API,例如mysqli_或 PDO。将错误报告添加到您打开 PHP 标记之后的文件顶部,例如<?php error_reporting(E_ALL); ini_set('display_errors', 1);,然后是其余代码,以查看它是否产生任何结果。如果您收到弃用通知,那么您就会知道该使用什么。 -
我在文档中添加了错误报告,我正在使用 require ("EstablishAccess.php");要拥有这个变量,我需要连接传输到 php 文件中,并且错误报告说它们没有定义。我应该使用不同的功能来做我需要做的事情吗?
-
根据您的编辑,在您发布之前我确实对我的答案进行了编辑。重新加载它以查看我所做的更改。但是
mysqli_connect()来自哪里?你不能像那样混合 API。
标签: php mysql database-connection