Exemples
Ce qui suit est un simple exemple qui établit une connexion entre PHP et CUBRID. Cette section expose les fonctions les plus basiques et utiles. Le code suivant nécessite une connexion à la base de données CUBRID, ce qui signifie que le serveur CUBRID ainsi que le courtier CUBRID doivent être en fonctionnement.
L'exemple ci-dessous utilise la base de données demodb comme exemple. Par défaut, elle est créée durant l'installation. Assurez-vous que c'est bien le cas.
Exemple #1 Exemple de récupération de données
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc-kr">
</head>
<body>
<center>
<table border=2>
<?php
/**
* Définit les informations du serveur pour une connexion CUBRID.
* host_ip est l'adresse IP pointant l'installation du courtier CUBRID (localhost
* dans cet exemple), ainsi que le numéro de port à utiliser pour le courtier CUBRID.
* Le numéro du port est celui par défaut fourni lors de l'installation.
* Pour plus de détails, lisez le "Guide d'administration"
*/
$host_ip = "localhost";
$host_port = 33000;
$db_name = "demodb";
/**
* Connexion au serveur CUBRID. N'effectue pas la connexion immédiatement,
* mais ne fait que retenir les informations de connexions. La raison
* pour laquelle la connexion ne s'effectue pas immédiatement est pour
* gérer les transactions plus efficacement sur des architectures en 3 parties.
*/
$cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);
if (!$cubrid_con) {
echo "Erreur de connexion à la base de données";
exit;
}
?>
<?php
$sql = "select sports, count(players) as players from event group by sports";
/**
* Interroge le serveur CUBRID afin de récupérer les résultats de la requête SQL.
* Maintenant, nous effectuons réellement la connexion au serveur CUBRID.
*/
$result = cubrid_execute($cubrid_con, $sql);
if ($result) {
/**
* Récupère les noms des colonnes depuis le jeu de résultats créé par la requête SQL.
*/
$columns = cubrid_column_names($result);
/**
* Récupère le nombre de colonnes depuis le jeu de résultats créé par la requête SQL.
*/
$num_fields = cubrid_num_cols($result);
/**
* Liste les noms des colonnes depuis le jeu de résultats directement sur l'écran.
*/
echo("<tr>");
while (list($key, $colname) = each($columns)) {
echo("<td align=center>$colname</td>");
}
echo("</tr>");
/**
* Récupère les résultats depuis le jeu de résultats.
*/
while ($row = cubrid_fetch($result)) {
echo("<tr>");
for ($i = 0; $i < $num_fields; $i++) {
echo("<td align=center>");
echo($row[$i]);
echo("</td>");
}
echo("</tr>");
}
}
/**
* Le module PHP dans CUBRID fonctionne en architecture 3 parties.
* Lors de l'appel à une requête de type SELECT dans une transaction, elle
* sera exécutée comme faisant partie de la transaction. Aussi, si la
* transaction est annulé avant l'appel à la requête SELECT, elle sera
* exécutée avec des performances moindres.
*/
cubrid_commit($cubrid_con);
cubrid_disconnect($cubrid_con);
?>
</body>
</html>
Exemple #2 Exemple d'insertion de données
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc- kr">
</head>
<body>
<center>
<table border=2>
<?php
/**
* host_ip est l'adresse IP pointant l'installation du courtier CUBRID.
* host_port est le numéro du port du courtier CUBRID.
* db_name est le nom de la base de données CUBRID.
*/
$host_ip = "localhost";
$host_port = 33000;
$db_name = "demodb";
$cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);
if (!$cubrid_con) {
echo "Erreur lors de la connexion à la base de données";
exit;
}
?>
<?php
$sql = "insert into olympic (host_year,host_nation,host_city,"
. "opening_date,closing_date) values (2008, 'China', 'Beijing',"
. "to_date('08-08-2008','mm-dd- yyyy'),to_date('08-24-2008','mm-dd-yyyy')) ;"
$result = cubrid_execute($cubrid_con, $sql);
if ($result) {
/**
* Traitement réussi, nous pouvons commiter.
*/
cubrid_commit($cubrid_con);
echo("Insertion avec succès");
} else {
/**
* Une erreur est survenue, aussi, le message d'erreur est affiché et le rollback est appelé.
*/
echo(cubrid_error_msg());
cubrid_rollback($cubrid_con);
}
cubrid_disconnect($cubrid_con);
?>
</body>
</html>
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-cubrid.examples.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.