php连接数据库显示500错误代码,尝试通过PHP访问数据库时出现ClearDB / Heroku 500错误...

我已经使用PHP在我们自己的服务器上多次访问MySQL数据库,并始终使用相同的PHP脚本来执行此操作(显然会更改登录详细信息)。不过这是我第一次使用Heroku& ClearDB和我遇到了问题。

数据库在我们的使用ClearDB的Heroku PHP应用程序上,并且我访问了CLEARDB_DATABASE_URL以查找用户名,密码,主机名和数据库名称。只是为了确保我做得正确,我的理解是这是格式:

mysql://USER_NAME:PASSWORD@HOST_NAME/DATABASE_NAME?reconnect=true在MySQL Workbench中使用这些细节,我设法登录到数据库并添加一个表,所以我相信它们是正确的细节。

但是,当我尝试使用我的PHP脚本访问它时,使用从URL获取的相同变量,我得到以下错误:

HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.起初我以为Heroku应用程序可能已经完成了,但我仍然可以访问PHP脚本中不会尝试访问数据库的任何函数。

正如我所说,这个脚本一直在工作,所以我不确定问题出在哪里。

我的数据库连接与以下构造函数在一个单独的类中:

function __construct()

{

$this->DB_HOST = 'us-cdbr-east-02.cleardb.com';

$this->DB_USERNAME = 'the_username_from_url';

$this->DB_PASSWORD = 'the_password_from_url';

$this->DB_DATABASE = 'the_database_name_from_url';

}带有一个connect()函数,该函数根据其他类的需要调用:

function connect()

{

self::$instance = new mysqli($this->DB_HOST, $this->DB_USERNAME, $this->DB_PASSWORD, $this->DB_DATABASE);

if (mysqli_connect_errno()) {

$this->raise_error(printf("Connect failed: %s\n", mysqli_connect_error()));

}

return self::$instance;

}我99.9%肯定这个问题是由于尝试连接到数据库造成的。尽管当我在浏览器中测试脚本时,它不会返回任何PHP错误消息,但它只是导致500错误的基于DB的函数。

我愿意接受任何建议......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值