mirror of
https://github.com/macintoshplus/doc-fr.git
synced 2026-03-25 17:32:07 +01:00
187 lines
6.2 KiB
XML
187 lines
6.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 73fae4ee51b644b72028e610abefefced57c18ad Maintainer: yannick Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<chapter xml:id="cubrid.examples" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
&reftitle.examples;
|
|
<para>
|
|
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.
|
|
</para>
|
|
<para>
|
|
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.
|
|
</para>
|
|
<example>
|
|
<title>Exemple de récupération de données</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<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>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
<example>
|
|
<title>Exemple d'insertion de données</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<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>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</chapter>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|