Vous devez analyser les informations de la base de données à partir de VCAP_SERVICES. \service les lettres de créance.
Si votre service de base de données est "SQL Database", vous pouvez vous connecter à SQLDB en utilisant cet exemple de code :
//parse VCAP_SERVICES Environment variable
$vcap_services = $_ENV["VCAP_SERVICES"];
$services_json = json_decode($vcap_services,true);
$sqldb = $services_json["sqldb"];
if (empty($sqldb)) {
echo "No sqldb service instance is bound. Please bind a sqldb service instance";
return;
}
//Get Credentials object (db,host,port,username,password)
$sqldb_config = $services_json["sqldb"][0]["credentials"];
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=".
$sqldb_config["db"].
";HOSTNAME=".
$sqldb_config["host"].
";PORT=".
$sqldb_config["port"].
";PROTOCOL=TCPIP;UID=".
$sqldb_config["username"].
";PWD=".
$sqldb_config["password"].
";";
$conn = db2_connect($conn_string, '', ''); //db connection
les informations sont automatiquement récupérées dans les VCAP_SERVICES. L'application lit la variable env. et récupère automatiquement les champs username, host, db password.
mais vous pouvez définir manuellement le db, l'hôte, le port, le nom d'utilisateur et le mot de passe en regardant à identifiants de service du service :
Comment récupérer les informations d'identification :
-
à partir de l'interface utilisateur DASHBOARD
- cliquez sur l'icône de votre service dans l'interface utilisateur du tableau de bord
- dans la nouvelle page, dans le menu de gauche, cliquez sur "Service Credentials".
- Si vous ne voyez pas d'informations d'identification mais que vous voyez le bouton "ADD CREDENTIALS", cliquez sur ce bouton, modifiez le nom des informations d'identification comme vous le souhaitez et cliquez sur le bouton "ADD".
- De cette façon, vous verrez les informations sur le service (informations d'identification).
-
à partir de la ligne de commande CF
cf env votre_nom_application
Dans le code, nous utilisons le module DB2 : utiliser le buildpack suivant https://github.com/ibmdb/db2heroku-buildpack-php lorsque vous utilisez SQLDB avec PHP. Il installera le module php 'ibm_db2' pour votre usage.
Vous pouvez définir le buildpack lorsque vous poussez votre application sur Bluemix :
cf push <your_app_name> -b https://github.com/ibmdb/db2heroku-buildpack-php