ibase_service_attach

(PHP 5, PHP 7 < 7.4.0)

ibase_service_attachConnexion au gestionnaire de service

Description

ibase_service_attach(string $host, string $dba_username, string $dba_password): resource|false

Liste de paramètres

host

Le nom ou l'adresse IP de l'hôte de la base de donnée. Vous pouvez définir le port en ajoutant '/' et le numéro du port. Si aucun port est spécifié, le port 3050 sera utilisé.

dba_username

Le nom de tout utilisateur valide.

dba_password

Le mot de passe de l'utilisateur.

Valeurs de retour

Returns a Interbase / Firebird link identifier on success ou false si une erreur survient.

Exemples

Exemple #1 Exemple avec ibase_service_attach()

<?php
// S'attacher au serveur Firebird distant par une adresse ip
if (($service = ibase_service_attach('10.1.1.199', 'sysdba', 'masterkey')) != FALSE) {

// Attaché avec succès.
// Récupérer la version du serveur (qqch comme 'LI-V3.0.4.33054 Firebird 3.0')
$server_version = ibase_server_info($service, IBASE_SVC_SERVER_VERSION);

// Récupérer l'implémentation serveur (qqch comme 'Firebird/Linux/AMD/Intel/x64')
$server_implementation = ibase_server_info($service, IBASE_SVC_IMPLEMENTATION);

// Se détacher du serveur (déconnexion)
ibase_service_detach($service);

// Afficher les informations
echo "Server version: " . $server_version . "<br/>";
echo
"Server implementation: " . $server_implementation;
}
else {
// Afficher un message en cas d'erreur
$conn_error = ibase_errmsg();
die(
$conn_error);
}

?>

Exemple #2 Exemple deibase_service_attach() en utilisant la syntaxe hostname/port

<?php
// S'attacher au serveur Firebird distant par nom. Utilise le Port 3050.
if (($service = ibase_service_attach('FB-SRV-01.contoso.local/3050', 'sysdba', 'masterkey')) != FALSE) {

// Attaché avec succès.
// Récupérer la version du serveur (qqch comme 'LI-V3.0.4.33054 Firebird 3.0')
$server_version = ibase_server_info($service, IBASE_SVC_SERVER_VERSION);

// Récupérer l'implémentation serveur (qqch comme 'Firebird/Linux/AMD/Intel/x64')
$server_implementation = ibase_server_info($service, IBASE_SVC_IMPLEMENTATION);

// Se détacher du serveur (déconnexion)
ibase_service_detach($service);

// Afficher les informations
echo "Server version: " . $server_version . "<br/>";
echo
"Server implementation: " . $server_implementation;
}
else {
// Afficher un message en cas d'erreur
$conn_error = ibase_errmsg();
die(
$conn_error);
}

?>

Voir aussi

add a note add a note

User Contributed Notes 3 notes

up
1
Paul Vinkenoog
16 years ago
The previous comment is incorrect. You can connect to the Service Manager as any valid user, and connecting to the Service Manager is not the same as connecting to the security database. However, some of the service functions (which you may subsequently call with the service handle returned by ibase_service_attach) are only available to SYSDBA.
up
0
houston_roadrunner at yahoo dot com
18 years ago
When using this function it looks like you can only use SYSDBA as the user, as you are connecting to the security database. This is a restriction by the interbase/firebird server.
up
0
Anonymous
18 years ago
An example of ibase_service_attach:
<?php
   
//attach to the server running on localhost
   
if (($service = ibase_service_attach('localhost', 'sysdba', 'masterkey')) != FALSE) {
       
//retrieve server info
       
$server_info  = ibase_server_info($service, IBASE_SVC_SERVER_VERSION)
                      .
' / '
                     
. ibase_server_info($service, IBASE_SVC_IMPLEMENTATION);
       
//detach from server (disconnect)
       
ibase_service_detach($service);
    }
    else {
       
$ib_error = ibase_errmsg();
    }
echo
$server_info;
?>
Should echo something like:

WI-T2.0.0.12484 Firebird 2.0 Release Candidate 1 / Firebird/x86/Windows NT

Taken/adapted from ibWebAdmin source code
To Top