0

我正在尝试在 bluemix 上部署一个 php Web 应用程序。所以我已经将 clearDB mysql 服务绑定到我的应用程序。vcap_service 变量提供给我。但是当我使用这些变量执行简单的 sql 查询时,应用程序页面什么也不做,而相同的代码在 xamp localhost 上运行良好。请帮我。

这是代码:

<?php
$servername = "us-cdbr-iron-east-02.cleardb.net";
$username = "b23807********";
$password = "********";
$dbname = "ad_70723170af1****";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// sql to create table
$sql = "CREATE TABLE flybird (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";

if ($conn->query($sql) === TRUE) {
    echo "Table flybird created successfully";
} else {
    echo "Error creating table: " . $conn->error;
}

$conn->close();
?>

显示以下错误:在第 8 行的 /home/vcap/app/htdocs/table.php 中找不到错误“PHP 消息:PHP 致命错误:类 'mysqli”。

4

3 回答 3

2

php buildpack 存在问题,您需要在应用程序中显式添加 mysqli 函数。

创建一个名为.bp-config/options.json. 您可以自定义 php buildpack 扩展,查看内容了解更多信息。

内容应包含以下内容。

{
    "PHP_EXTENSIONS": ["mysqli"]
}
于 2015-06-01T20:31:47.417 回答
0

您应该在 composer.json 配置中指定 mysqli 依赖项。

{"require": { "ext-mysqli": "*" } }

于 2015-08-19T16:28:16.313 回答
-2

我认为您需要在应用程序中显式添加 mysqli 函数

您必须在 .bp-config/options.json 文件中启用该库。就像下面的例子

前任:

{ "PHP_EXTENSIONS": ["mysqli"] }

如果您的应用程序中没有此文件,只需创建它,添加扩展并将其推送到您的 Bluemix 应用程序。(链接

查看 developerworks 上的此页面以获取更多信息,我认为这与您遇到的问题相同(链接

于 2015-06-01T16:29:09.057 回答