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();
?>

次のエラーが表示されます: Got error 'PHP message: PHP Fatal error: Class 'mysqli' not found in /home/vcap/app/htdocs/table.php on line 8\n.

4

3 に答える 3

2

php ビルドパックには問題があります。アプリケーションに mysqli 関数を明示的に追加する必要があります。

というファイルを作成します.bp-config/options.json。php ビルドパック拡張機能をカスタマイズできます。詳細については、こちらをご覧ください。

コンテンツには、次の内容が含まれている必要があります。

{
    "PHP_EXTENSIONS": ["mysqli"]
}
于 2015-06-01T20:31:47.417 に答える
-2

アプリケーションに mysqli 関数を明示的に追加する必要があると思います

.bp-config/options.json ファイルでライブラリを有効にする必要があります。以下の例のように

元:

{ "PHP_EXTENSIONS": ["mysqli"] }

アプリケーションにこのファイルがない場合は、ファイルを作成し、拡張子を追加して Bluemix アプリにプッシュします。(リンク)

詳細については、developerworks のこのページを確認してください。あなたが抱えているのと同じ問題だと思います (リンク)

于 2015-06-01T16:29:09.057 に答える