cvs: phpdoc /fr/functions fbsql.xml

From: Date: Mon, 02 Jul 2001 11:01:23 +0000
Subject: cvs: phpdoc /fr/functions fbsql.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969335808@lists.php.net to get a copy of this message
dams Mon Jul 2 07:01:23 2001 EDT Added files: /phpdoc/fr/functions fbsql.xml Log: Initial revision for FBSQL.

Index: phpdoc/fr/functions/fbsql.xml +++ phpdoc/fr/functions/fbsql.xml <reference id="ref.fbsql"> <title>FrontBase</title> <titleabbrev>FrontBase</titleabbrev> <partintro> <simpara> Ces fonctions vous permettent d'acc&eacute;der aux serveurs SQL FrontBase. Pour pouvoir les utiliser, vous devez compiler PHP avec le support fbsql en utilisant l'option <link linkend="install.configure.with-fbsql"><option role="configure">--with-fbsql</option></link>. Si vous utilisez cette option sans sp&eacute;cifier le chemin jusqu'&agrave; l'installation fbsql, PHP recherchera les librairies du client fbsql dans les dossiers habituels, sur votre syst&egrave;me. Les utilisateurs qui ont install&eacute; FrontBase dans un dossier non standard doivent sp&eacute;cifier le chemin comme ceci : <link linkend="install.configure.with-fbsql"><option role="configure">--with-fbsql=/path/to/fbsql</option></link>. Cela va indiquer &agrave; PHP le bon emplacement des librairies de FrontBase, et &eacute;viter les conflits. </simpara> <simpara> Plus d'informations sur FrontBase sont disponibles &agrave; <ulink url="&url.fbsql;">&url.fbsql;</ulink>. </simpara> <simpara> La documentation compl&egrave;te de FrontBase est disponible &agrave; <ulink url="&url.fbsql.docs;">&url.fbsql.docs;</ulink>. </simpara> <simpara> Le support de Frontbase a &eacute;t&eacute; ajout&eacute; en PHP 4.0.6. </simpara> </partintro> <refentry id="function.fbsql-affected-rows"> <refnamediv> <refname>fbsql_affected_rows</refname> <refpurpose> Lit le nombre de ligne affect&eacute;es par la derni&egrave;re requ&ecirc;te </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_affected_rows</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_affected_rows</function> retourne le nombre de lignes affect&eacute;es par la derni&egrave;re requ&ecirc;te INSERT, UPDATE ou DELETE, effectu&eacute;e avec la connexion repr&eacute;sent&eacute;e par <parameter>link_identifier</parameter>. Si ce dernier n'est pas sp&eacute;cifi&eacute;, c'est la derni&egrave;re connexion ouverte par <function>fbsql_connect</function> qui sera utilis&eacute;e. </para> <note> <para> Si vous utilisez les transactions, vous devez appeler <function>fbsql_affected_rows</function> apr&egrave;s votre requ&ecirc;te INSERT, UPDATE ou DELETE, mais pas apr&egrave;s la validation. </para> </note> <para> Si la derni&egrave;re requ&ecirc;te DELETE ne contenait pas de clause WHERE, toutes les lignes seront effac&eacute;es, mais <function>fbsql_affected_rows</function> retournera 0. </para> <note> <para> Lors d'une requ&ecirc;te UPDATE, FrontBase ne modifie pas les lignes dont les anciennes valeurs sont &eacute;gales aux nouvelles. Cela fait que <function>fbsql_affected_rows</function> ne retournera pas le nombre de ligne trait&eacute;es, mais le nombre de lignes affect&eacute;es (modifi&eacute;es) par la requ&ecirc;te. </para> </note> <para> Si la derni&egrave;re requ&ecirc;te &eacute;choue, <function>fbsql_affected_rows</function> retourne -1. </para> <para> Voir aussi <function>fbsql_num_rows</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-autocommit"> <refnamediv> <refname>fbsql_autocommit</refname> <refpurpose>Active ou d&eacute;sactive la validation automatique.</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>fbsql_autocommit</function></funcdef> <paramdef>resource <parameter>link_identifier</parameter> </paramdef> <paramdef>boolean <parameter> <optional>OnOff</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_autocommit</function> retourne l'&eacute;tat courant de la validation automatique, pour la connexion <parameter>link_identifier</parameter>. Si le param&egrave;tre <parameter>OnOff</parameter> est fourni, la validation automatique sera remplac&eacute;e par sa valeur (un bool&eacute;en). </para> </refsect1> </refentry> <refentry id="function.fbsql-change-user"> <refnamediv> <refname>fbsql_change_user</refname> <refpurpose> Change le nom d'utilisateur de la session active </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_change_user</function></funcdef> <paramdef>string <parameter>user</parameter></paramdef> <paramdef>string <parameter>password</parameter></paramdef> <paramdef>string <parameter> <optional>database</optional> </parameter> </paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_change_user</function> change le nom de l'utilisateur courant sur la session active courante, ou sur <parameter>link_identifier</parameter>. Si une base de donn&eacute;es est sp&eacute;cifi&eacute;e avec le param&egrave;tre <parameter>database</parameter>, elle deviendra la base par d&eacute;faut du nouvel utilisateur. Le nouvel utilisateur doit &ecirc;tre sp&eacute;cifi&eacute; par son login (<parameter>user</parameter>), et son mot de passe (<parameter>password</parameter>). Si l'authentification &eacute;choue, la session courante restera ouverte. </para> </refsect1> </refentry> <refentry id="function.fbsql-close"> <refnamediv> <refname>fbsql_close</refname> <refpurpose>Ferme la connexion FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>fbsql_close</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_close</function> retourne <literal>TRUE</literal> en cas de succ&egrave;s et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_close</function> ferme la connexion au serveur FrontBase associ&eacute; &agrave; la ressource <parameter>link_identifier</parameter>. Si <parameter>link_identifier</parameter> est omis, c'est la derni&egrave;re connexion ouverte qui sera ferm&eacute;e. </para> <para> Utiliser <function>fbsql_close</function> n'est pas n&eacute;cessaire, car les liens non persistants seront automatiquement ferm&eacute; &agrave; la fin du script. </para> <note> </note> <example> <title>Exemple avec <function>fbsql_close</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect("localhost", "_SYSTEM", "secret") or die("Could not connect"); print("Connect&eacute;!"); fbsql_close($link); ?&gt; </programlisting> </example> <para> Voir aussi <function>fbsql_connect</function> et <function>fbsql_pconnect</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-connect"> <refnamediv> <refname>fbsql_connect</refname> <refpurpose>Ouvre une connexion &agrave; un serveur FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_connect</function></funcdef> <paramdef>string <parameter> <optional>hostname</optional> </parameter> </paramdef> <paramdef>string <parameter> <optional>username</optional> </parameter> </paramdef> <paramdef>string <parameter> <optional>password</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_connect</function> retourne une ressource de connexion positive en cas de succ&egrave;s, ou un message d'erreur en cas d'&eacute;chec. </para> <para> <function>fbsql_connect</function> &eacute;tablit une connexion avec un serveur FrontBase. Les valeur suivantes sont utilis&eacute;es, en cas d'omission : <parameter>hostname</parameter> = 'NULL', <parameter>username</parameter> = '_SYSTEM' et <parameter>password</parameter> = "" (pas de mot de passe). </para> <para> Si un deuxi&egrave;me appel est fait &agrave; <function>fbsql_connect</function> avec les m&ecirc;mes arguments, une nouvelle connexion ne sera pas g&eacute;n&eacute;r&eacute;e, mais la connexion d&eacute;j&agrave; ouverte sera reutilis&eacute;e, et retourn&eacute;e. </para> <para> La connexion au serveur sera ferm&eacute;e d&egrave;s la fin du scrpit, &agrave; moins qu'elle ne soit explicitement termin&eacute;e plus t&ocirc;t, avec la fonction <function>fbsql_close</function>. </para> <example> <title>Exemple avec <function>fbsql_connect</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect("localhost", "_SYSTEM", "secret") or die("Could not connect"); print("Connected successfully"); fbsql_close($link); ?&gt; </programlisting> </example> <para> Voir aussi <function>fbsql_pconnect</function> et <function>fbsql_close</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-create-db"> <refnamediv> <refname>fbsql_create_db</refname> <refpurpose>Cr&eacute;e une base de donn&eacute;es</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>fbsql_create_db</function></funcdef> <paramdef>string <parameter>database_name</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_create_db</function> cr&eacute;e une nouvelle base de donn&eacute;es, nomm&eacute;e <parameter>database_name</parameter>, sur le serveur rep&eacute;r&eacute; par la ressource <parameter>link_identifier</parameter>. </para> <example> <title>Exemle avec <function>fbsql_create_db</function></title> <programlisting role="php"> &lt;?php $link = fbsql_pconnect("localhost", "_SYSTEM", "secret") or die ("Impossible de se connecter"); if (fbsql_create_db("my_db")) { print("Base de donn&eacute;es cr&eacute;&eacute;e!\n"); } else { printf("Erreur de cr&eacute;ation de la base de donn&eacute;es : %s\n", fbsql_error()); } ?&gt; </programlisting> </example> <para> Voir aussi <function>fbsql_drop_db</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-data-seek"> <refnamediv> <refname>fbsql_data_seek</refname> <refpurpose>D&eacute;place le pointeur interne de r&eacute;sultat</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_data_seek</function></funcdef> <paramdef>int <parameter>result_identifier</parameter></paramdef> <paramdef>int <parameter>row_number</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_data_seek</function> retourne <literal>TRUE</literal> en cas de succ&egrave;s et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_data_seek</function> d&eacute;place le pointeur interne de ligne dans le r&eacute;sultat de requ&ecirc;te <parameter>result_identifier</parameter> jusqu'&agrave; la ligne <parameter>row_number</parameter>. Le prochain appel &agrave; <function>fbsql_fetch_row</function> retournera cette ligne. </para> <para> Les lignes sont num&eacute;rot&eacute;es &agrave; partir de 0. </para> <example> <title>Exemple avec <function>fbsql_data_seek</function></title> <programlisting role="php"> &lt;?php $link = fbsql_pconnect("localhost", "_SYSTEM", "secret") or die ("Impossible de se connecter"); fbsql_select_db("samp_db") or die ("Impossible de s&eacute;lectionner une base"); $query = "SELECT last_name, first_name FROM friends;"; $result = fbsql_query ($query) or die ("Query failed"); # Lecture des lignes en ordre inverse for ($i = fbsql_num_rows ($result) - 1; $i &gt;=0; $i--) { if (!fbsql_data_seek ($result, $i)) { printf ("Impossible d'acc&eacute;der &agrave; la ligne %d\n", $i); continue; } if(!($row = fbsql_fetch_object ($result))) continue; printf ("%s %s&lt;BR&gt;\n", $row-&gt;last_name, $row-&gt;first_name); } fbsql_free_result ($result); ?&gt; </programlisting> </example> </refsect1> </refentry> <refentry id="function.fbsql-db-query"> <refnamediv> <refname>fbsql_db_query</refname> <refpurpose>Envoie une requ&ecirc;te &agrave; la base FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_db_query</function></funcdef> <paramdef>string <parameter>database</parameter></paramdef> <paramdef>string <parameter>query</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_db_query</function> retourne une ressource positive repr&eacute;sentant un r&eacute;sultat de requ&ecirc;te en cas de succ&egrave;s, et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_db_query</function> s&eacute;lectionne la base <parameter>database</parameter> et y ex&eacute;cute la requ&ecirc;te <parameter>query</parameter>. Si le param&egrave;tre optionnel <parameter>link_identifier</parameter> est sp&eacute;cifi&eacute;, <function>fbsql_db_query</function> travaillera sur cette connexion. S'il est omis, <function>fbsql_db_query</function> essaiera d'utiliser la derni&egrave;re connexion ouverte. Si aucune connexion n'a &eacute;t&eacute; ouverte, <function>fbsql_db_query</function> essaiera de se connecter automatiquement en appelant la fonction <function>fbsql_connect</function>, sans arguments. </para> <para> Voir aussi <function>fbsql_connect</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-drop-db"> <refnamediv> <refname>fbsql_drop_db</refname> <refpurpose>Supprime une base de donn&eacute;es FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_drop_db</function></funcdef> <paramdef>string <parameter>database_name</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_drop_db</function> retourne <literal>TRUE</literal> en cas de succ&egrave;s et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_drop_db</function> essaie de supprimer la base de donn&eacute;es <parameter>database_name</parameter>, sur la connexion repr&eacute;sent&eacute;e par <parameter>link_identifier</parameter>. </para> </refsect1> </refentry> <refentry id="function.fbsql-errno"> <refnamediv> <refname>fbsql_errno</refname> <refpurpose>Retourne le code d'erreur FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_errno</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_errno</function> retourne le code d'erreur de la derni&egrave;re connexion FrontBase, ou bien <literal>0</literal> (z&eacute;ro) si aucune erreur n'est survenue. </para> <para> Les erreurs g&eacute;n&eacute;r&eacute;es par FrontBase ne sont pas automatiquement affich&eacute;es comme alertes. Il faut utiliser la fonction <function>fbsql_errno</function> pour conna&icirc;tre leur code d'erreur. Notez que cette fonction ne retourne que le code d'erreur g&eacute;n&eacute;r&eacute; par la derni&egrave;re fonction FrontBase (hormis <function>fbsql_error</function> et <function>fbsql_errno</function>) : si vous voulez rep&eacute;rer les erreurs, faites le d&egrave;s que les fonctions ont &eacute;t&eacute; appel&eacute;es. <informalexample> <programlisting role="php"> &lt;?php fbsql_connect("marliesle"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; fbsql_select_db("nonexistentdb"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; $conn = fbsql_query("SELECT * FROM nonexistenttable;"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; ?&gt; </programlisting> </informalexample> </para> <para> Voir aussi <function>fbsql_error</function> et <function>fbsql_warnings</function> </para> </refsect1> </refentry> <refentry id="function.fbsql-error"> <refnamediv> <refname>fbsql_error</refname> <refpurpose>Retourne le message d'erreur FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_error</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_error</function> retourne le dernier message d'erreur g&eacute;n&eacute;r&eacute; par le serveur FrontBase, ou bien <literal>''</literal> (cha&icirc;ne vide) si aucune erreur n'est survenue. </para> <para> Les erreurs g&eacute;n&eacute;r&eacute;es par FrontBase ne sont pas automatiquement affich&eacute;es comme alertes. Il faut utiliser la fonction <function>fbsql_errno</function> pour conna&icirc;tre leur code d'erreur. Notez que cette fonction ne retourne que le code d'erreur g&eacute;n&eacute;r&eacute; par la derni&egrave;re fonction FrontBase (hormis <function>fbsql_error</function> et <function>fbsql_errno</function>) : si vous voulez rep&eacute;rer les erreurs, faites le d&egrave;s que les fonctions ont &eacute;t&eacute; appel&eacute;es. <informalexample> <programlisting role="php"> &lt;?php fbsql_connect("marliesle"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; fbsql_select_db("nonexistentdb"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; $conn = fbsql_query("SELECT * FROM nonexistenttable;"); echo fbsql_errno().": ".fbsql_error()."&lt;br&gt;"; ?&gt; </programlisting> </informalexample> </para> <para> Voir aussi <function>fbsql_errno</function> et <function>fbsql_warnings</function> </para> </refsect1> </refentry> <refentry id="function.fbsql-fetch-array"> <refnamediv> <refname>fbsql_fetch_array</refname> <refpurpose> Lit toute une ligne de r&eacute;sultat dans un tableau. </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>array <function>fbsql_fetch_array</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter> <optional>result_type</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_array</function> retourne un tableau contenant la ligne courante du r&eacute;sultat <parameter>result</parameter>, ou <literal>FALSE</literal> s'il n'y a plus de lignes. </para> <para> <function>fbsql_fetch_array</function> est une version am&eacute;lior&eacute;e de <function>fbsql_fetch_row</function>. En plus de stocker les donn&eacute;es dans un tableau &agrave; indice num&eacute;rique, elle les stocke aussi sous forme de tableau associatif, dont les indices sont les noms des colonnes. </para> <para> SI deux colonnes (ou plus) on le m&ecirc;me nom, la derni&egrave;re colonne sera utilis&eacute;e. Pour acc&eacute;der aux autres colonnes de m&ecirc;me nom, vous devez absolument utiliser les indices num&eacute;riques. <informalexample> <programlisting> select t1.f1 as foo t2.f1 as bar from t1, t2; </programlisting> </informalexample> </para> <para> Il est important de noter que <function>fbsql_fetch_array</function> n'est pas significativement plus lent que <function>fbsql_fetch_row</function>, tandis qu'elle apporte un confort d'utilisation notable. </para> <para> Le second argument optionnel <parameter>result_type</parameter> de <function>fbsql_fetch_array</function> est une constante qui peut prendre l'une des valeurs suivantes : <literal>FBSQL_ASSOC</literal>, <literal>FBSQL_NUM</literal> et <literal>FBSQL_BOTH</literal>. </para> <para> Pour plus de d&eacute;tails, reportez-vous &agrave; <function>fbsql_fetch_row</function> et <function>fbsql_fetch_assoc</function>. </para> <example> <title>Exemple avec <function>fbsql_fetch_array</function></title> <programlisting role="php"> &lt;?php fbsql_connect ($host, $user, $password); $result = fbsql_db_query ("database","select user_id, fullname from table"); while ($row = fbsql_fetch_array ($result)) { echo "user_id: ".$row["user_id"]."&lt;br&gt;\n"; echo "user_id: ".$row[0]."&lt;br&gt;\n"; echo "fullname: ".$row["fullname"]."&lt;br&gt;\n"; echo "fullname: ".$row[1]."&lt;br&gt;\n"; } fbsql_free_result ($result); ?&gt; </programlisting> </example> </refsect1> </refentry> <refentry id="function.fbsql-fetch-assoc"> <refnamediv> <refname>fbsql_fetch_assoc</refname> <refpurpose> Lit toute une ligne de r&eacute;sultat dans un tableau associatif </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>array <function>fbsql_fetch_assoc</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_assoc</function> retourne un tableau associatif contenant la ligne courante du r&eacute;sultat <parameter>result</parameter>, ou <literal>FALSE</literal> s'il n'y a plus de lignes. </para> <para> <function>fbsql_fetch_assoc</function> est &eacute;quivalent &agrave; <function>fbsql_fetch_array</function> avec l'option <literal>FBSQL_ASSOC</literal>. Elle ne retourne qu'un tableau associatif. C'est le comportement initial de <function>fbsql_fetch_array</function>. Si vous avez aussi besoin des indices num&eacute;riques, utilisez <function>fbsql_fetch_array</function>. </para> <para> SI deux colonnes (ou plus) on le m&ecirc;me nom, la derni&egrave;re colonne sera utilis&eacute;e. Pour acc&eacute;der aux autres colonnes de m&ecirc;me nom, vous devez absolument utiliser la fonction <function>fbsql_fetch_array</function>. </para> <para> Il est important de noter que <function>fbsql_fetch_assoc</function> n'est pas significativement plus lent que <function>fbsql_fetch_row</function>, tandis qu'elle apporte un confort d'utilisation notable. </para> <para> Pour plus de d&eacute;tails, reportez-vous &agrave; <function>fbsql_fetch_row</function> et <function>fbsql_fetch_array</function>. </para> <example> <title>Exemple d'un <function>fbsql_fetch_assoc</function></title> <programlisting role="php"> &lt;?php fbsql_connect ($host, $user, $password); $result = fbsql_db_query ("database","select * from table;"); while ($row = fbsql_fetch_assoc ($result)) { echo $row["user_id"]; echo $row["fullname"]; } fbsql_free_result ($result); ?&gt; </programlisting> </example> </refsect1> </refentry> <refentry id="function.fbsql-fetch-field"> <refnamediv> <refname>fbsql_fetch_field</refname> <refpurpose> Lit des informations sur une colonne dans un r&eacute;sultat, et retourne un objet </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>object <function>fbsql_fetch_field</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter> <optional>field_offset</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_field</function> retourne une objet contenant les informations sur un champs, dans le r&eacute;sultat <parameter>result</parameter>. </para> <para> <function>fbsql_fetch_field</function> sert &agrave; lire des informations sur les champs dans le r&eacute;sultat <parameter>result</parameter>. Si le second param&egrave;tre <parameter>field_offset</parameter> n'est pas sp&eacute;cifi&eacute;, le champs suivant est lu. </para> <para> Les propri&eacute;t&eacute;s de l'objet sont : <itemizedlist> <listitem> <simpara> name - Nom de colonne </simpara> </listitem> <listitem> <simpara> table - Nom de la table d'origine </simpara> </listitem> <listitem> <simpara> max_length - Taille maximale de la colonne </simpara> </listitem> <listitem> <simpara> not_null - 1 si la colonne ne peut &ecirc;tre nulle </simpara> </listitem> <listitem> <simpara> type - Type de la colonne </simpara> </listitem> </itemizedlist> </para> <example> <title>Exemple avec <function>fbsql_fetch_field</function></title> <programlisting role="php"> &lt;?php fbsql_connect ($host, $user, $password) or die ("Impossible de se connecter"); $result = fbsql_db_query ("database", "select * from table;") or die ("Query failed"); # get column metadata $i = 0; while ($i &lt; fbsql_num_fields ($result)) { echo "Information for column $i:&lt;br&gt;\n"; $meta = fbsql_fetch_field ($result); if (!$meta) { echo "No information available&lt;br&gt;\n"; } echo "&lt;PRE> max_length: $meta->max_length name: $meta->name not_null: $meta->not_null table: $meta->table type: $meta->type &lt;/PRE>"; $i++; } fbsql_free_result ($result); ?&gt; </programlisting> </example> <para> Voir aussi <function>fbsql_field_seek</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-fetch-lengths"> <refnamediv> <refname>fbsql_fetch_lengths</refname> <refpurpose> Lit la taille de chaque colonne d'un r&eacute;sultat </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>array <function>fbsql_fetch_lengths</function></funcdef> <paramdef>resource <parameter><optional>result</optional></parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_lengths</function> retourne un tableau contenant les tailles maximales de chaque champs, dans la derni&egrave;re ligne lue par <function>fbsql_fetch_row</function> ou <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_fetch_lengths</function> stocke les tailles de chaque ligne de r&eacute;sultat retourn&eacute; par <function>fbsql_fetch_row</function>, <function>fbsql_fetch_array</function> et <function>fbsql_fetch_object</function> dans un tableau &agrave; indices num&eacute;riques, commen&ccedil;ant &agrave; 0. </para> <para> Voir aussi <function>fbsql_fetch_row</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-fetch-object"> <refnamediv> <refname>fbsql_fetch_object</refname> <refpurpose>Lit une ligne de r&eacute;sultat sous forme d'objet</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>object <function>fbsql_fetch_object</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter> <optional>result_type</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_object</function> retourne un objet dont les propri&eacute;t&eacute;s repr&eacute;sentent les colonnes de la ligne &agrave; lire, dans le r&eacute;sultat <parameter>result</parameter>, ou <literal>FALSE</literal> s'il n'y a pas de ligne &agrave; lire. </para> <para> <function>fbsql_fetch_object</function> est similaire &agrave; <function>fbsql_fetch_array</function>, &agrave; la diff&eacute;rence qu'elle retourne un objet. Nous ne pouvez alors acc&eacute;der aux donn&eacute;es qu'avec les noms des colonnes, et sous la forme de membre d'objets, et non plus avec leurs offset (les nombres ne peuvent repr&eacute;senter un membre d'objet). </para> <para> Le second argument optionnel <parameter>result_type</parameter> de <function>fbsql_fetch_array</function> est une constante qui peut prendre l'une des valeurs suivantes : <literal>FBSQL_ASSOC</literal>, <literal>FBSQL_NUM</literal> et <literal>FBSQL_BOTH</literal>. </para> <para> En terme de vitesse, cette fonction est identique &agrave; <function>fbsql_fetch_array</function> et presque aussi rapide que <function>fbsql_fetch_row</function> (la diff&eacute;rence n'est pas significative). <example> <title>Exemple avec <function>fbsql_fetch_object</function></title> <programlisting role="php"> &lt;?php fbsql_connect ($host, $user, $password); $result = fbsql_db_query ("database", "select * from table;"); while ($row = fbsql_fetch_object ($result)) { echo $row->user_id; echo $row->fullname; } fbsql_free_result($result); ?&gt; </programlisting> </example> </para> <para> Voir aussi <function>fbsql_fetch_array</function> et <function>fbsql_fetch_row</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-fetch-row"> <refnamediv> <refname>fbsql_fetch_row</refname> <refpurpose>Lit une ligne de r&eacute;sultat sous forme de tableau num&eacute;rique</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>array <function>fbsql_fetch_row</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_fetch_row</function> retourne un tableau repr&eacute;sentant la ligne courant dans le r&eacute;sultat <parameter>result</parameter>, ou bien <literal>FALSE</literal> s'il n'y a plus de lignes &agrave; lire. </para> <para> <function>fbsql_fetch_row</function> lit une ligne de donn&eacute;es dans le r&eacute;sultat <parameter>result</parameter>, et cr&eacute;e un tableau num&eacute;rique. Chaque colonne est stock&eacute;s dans un &eacute;l&eacute;ment du tableau, dans le m&ecirc;me ordre que dans le r&eacute;sultat. Les indices commencent &agrave; 0. </para> <para> Le prochain appel &agrave; <function>fbsql_fetch_row</function> va lire la prochaine ligne, ou bien retourner <literal>FALSE</literal> s'il n'y a plus de lignes &agrave; lire. </para> <para> Voir aussi <function>fbsql_fetch_array</function>, <function>fbsql_fetch_object</function>, <function>fbsql_data_seek</function>, <function>fbsql_fetch_lengths</function> et <function>fbsql_result</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-field-flags"> <refnamediv> <refname>fbsql_field_flags</refname> <refpurpose> Lit les options associ&eacute; &agrave; une colonne de r&eacute;sultat </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_field_flags</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_offset</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_flags</function> retourne les options du champs <parameter>field_offset</parameter>, dans le r&eacute;sultat <parameter>field_offset</parameter>. Les options sont retourn&eacute;es sous la forme d'un seul mot par option, s&eacute;par&eacute;es par des espaces, de fa&ccedil;ons &agrave; faciliter la manipulation avec <function>explode</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-field-name"> <refnamediv> <refname>fbsql_field_name</refname> <refpurpose> Lit le nom d'un champs </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_field_name</function></funcdef> <paramdef>int <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_index</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_name</function> retourne le nom du champs num&eacute;ro <parameter>field_index</parameter> dans le r&eacute;sultat <parameter>result</parameter>. <parameter>field_index</parameter> est le r&eacute;sultat de <function>fbsql_query</function> et <parameter>field_index</parameter> est l'offset num&eacute;rique du champs. </para> <note> <para> <parameter>field_index</parameter> commence &agrave; 0. </para> <para> e.g. L'index du trois&egrave;me champs est 2, et l'index du quatri&egrave;me champs est 3... </para> </note> <para> <example> <title>Exemple avec <function>fbsql_field_name</function></title> <programlisting role="php"> &lt;?php // La tablea utilisateur est constitu&eacute;e de trois colonnes // user_id // username // password. $res = fbsql_db_query("users", "select * from users;", $link); echo fbsql_field_name($res, 0) . "\n"; echo fbsql_field_name($res, 2); ?&gt; </programlisting> </example> </para> <para> L'exemple ci-dessus va afficher : <informalexample> <programlisting> user_id password </programlisting> </informalexample> </para> </refsect1> </refentry> <refentry id="function.fbsql-field-len"> <refnamediv> <refname>fbsql_field_len</refname> <refpurpose> Retourne la taille d'un champs </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_field_len</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_offset</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_len</function> retourne la taille du champs <parameter>field_offset</parameter> dans le r&eacute;sultat <parameter>result</parameter>. </para> </refsect1> </refentry> <refentry id="function.fbsql-field-seek"> <refnamediv> <refname>fbsql_field_seek</refname> <refpurpose> D&eacute;place le pointeur de r&eacute;sultat </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>fbsql_field_seek</function></funcdef> <paramdef>int <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_offset</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_seek</function> place le pointeur de colonne &agrave; la colonne <parameter>field_offset</parameter>. Si ce param&egrave;tre est omis, <function>fbsql_fetch_field</function> retourne le num&eacute;ro de colonne courant. </para> <para> Voir aussi <function>fbsql_fetch_field</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-field-table"> <refnamediv> <refname>fbsql_field_table</refname> <refpurpose> Lit le nom de la table d'origine d'un champs </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_field_table</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_offset</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_table</function> retourn le nom de la table d'o&ugrave; est issue le champs d'offset <parameter>field_offset</parameter>. Les num&eacute;ros de colonne commencent &agrave; 0. </para> </refsect1> </refentry> <refentry id="function.fbsql-field-type"> <refnamediv> <refname>fbsql_field_type</refname> <refpurpose> Lit le type d'une colonne </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_field_type</function></funcdef> <paramdef>int <parameter>result</parameter></paramdef> <paramdef>int <parameter>field_offset</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_field_type</function> est similaire &agrave; la fonction <function>fbsql_field_name</function>. Les arguments sont identiques, mais le type du champs est retourn&eacute;. Il peut valoir "int", "real", "string", "blob" ou d'autres valeurs, comme d&eacute;crit dans <ulink url="&url.fbsql.docs;">la documentation FrontBase</ulink>. <example> <title>Exemple avec <function>fbsql_field_type</function></title> <programlisting role="php"> &lt;?php fbsql_connect ("localhost:3306"); fbsql_connect ("localhost", "_SYSTEM", ""); $result = fbsql_query ("SELECT * FROM onek;"); $fields = fbsql_num_fields ($result); $rows = fbsql_num_rows ($result); $i = 0; $table = fbsql_field_table ($result, $i); echo "Your '".$table."' table has ".$fields." fields and ".$rows." records &lt;br&gt;"; echo "The table has the following fields &lt;br&gt;"; while ($i &lt; $fields) { $type = fbsql_field_type ($result, $i); $name = fbsql_field_name ($result, $i); $len = fbsql_field_len ($result, $i); $flags = fbsql_field_flags ($result, $i); echo $type." ".$name." ".$len." ".$flags."&lt;br&gt;"; $i++; } fbsql_close(); ?&gt; </programlisting> </example> </para> </refsect1> </refentry> <refentry id="function.fbsql-free-result"> <refnamediv> <refname>fbsql_free_result</refname> <refpurpose>Lib&egrave;re le r&eacute;sultat de la m&eacute;moire</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>bool <function>fbsql_free_result</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_free_result</function> va lib&eacute;rer toute la m&eacute;moire utilis&eacute;e par le r&eacute;sultat associ&eacute; &agrave; la ressource <parameter>result</parameter>. </para> <para> <function>fbsql_free_result</function> n'a besoin d'&ecirc;tre appel&eacute; que si vous craignez que votre script ne va consommer trop de m&eacute;moire, lorsqu'une requ&ecirc;te retourne de tr&egrave;s grand r&eacute;sultats. Toutes les ressources m&eacute;moire utilis&eacute;es par le script sont de toutes mani&egrave;res lib&eacute;r&eacute;es &agrave; la fin du script. </para> </refsect1> </refentry> <refentry id="function.fbsql-insert-id"> <refnamediv> <refname>fbsql_insert_id</refname> <refpurpose> Lit le dernier identifiant g&eacute;n&eacute;r&eacute; par une requ&ecirc;te INSERT </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_insert_id</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_insert_id</function> retourne l'identifiant g&eacute;n&eacute;r&eacute; par la colonne de type DEFAULT UNIQUE, lors de la derni&egrave;re requ&ecirc;te INSERT, avec la connexion <parameter>link_identifier</parameter>. Si <parameter>link_identifier</parameter> est omis, la derni&egrave;re connexion ouverte est utilis&eacute;e. </para> <para> <function>fbsql_insert_id</function> retournera 0 si la derni&egrave;re requ&ecirc;te n'a pas g&eacute;n&eacute;r&eacute; de valeur dans la colonne DEFAULT UNIQUE Si vous devez sauver cette valeur pour plus tard, n'oubliez pas d'appeler <function>fbsql_insert_id</function> tout de suite apr&egrave;s la requ&ecirc;te qui a g&eacute;n&eacute;r&eacute; cette valeur. </para> <note> <para> La valeur de la fonction FrontBase SQL "<literal>LAST_INSERT_ID()</literal>" retourne toujours la derni&egrave;re valeur g&eacute;n&eacute;r&eacute;e par DEFAULT UNIQUE et n'est jamais annul&eacute;e entre les requ&ecirc;tes. </para> </note> </refsect1> </refentry> <refentry id="function.fbsql-list-dbs"> <refnamediv> <refname>fbsql_list_dbs</refname> <refpurpose> Liste les bases de donn&eacute;es </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_list_dbs</function></funcdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_list_dbs</function> retourne un r&eacute;sultat contenant la liste des bases de donn&eacute;es disponibles sur le serveur <optional>link_identifier</optional>. Utilisez la fonction <function>fbsql_tablename</function> pour passer en revue ce r&eacute;sultat. </para> <para> <example> <title>Exemple avec <function>fbsql_list_dbs</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect('localhost', 'myname', 'secret'); $db_list = fbsql_list_dbs($link); while ($row = fbsql_fetch_object($db_list)) { echo $row->Database . "\n"; } ?&gt; </programlisting> </example> </para> <para> L'exemple ci-dessus va afficher ceci : <informalexample> <programlisting> database1 database2 database3 .. </programlisting> </informalexample> </para> <note> <para> L'exemple ci-dessus peut aussi bien fonctionner avec la fonction <function>fbsql_fetch_row</function> ou toute autre similaire. </para> </note> </refsect1> </refentry> <refentry id="function.fbsql-list-fields"> <refnamediv> <refname>fbsql_list_fields</refname> <refpurpose>Liste les champs d'un r&eacute;sultat FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_list_fields</function></funcdef> <paramdef>string <parameter>database_name</parameter></paramdef> <paramdef>string <parameter>table_name</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_list_fields</function> lit les informations &agrave; propos de la table <parameter>table_name</parameter>, dans la base de donn&eacute;es <parameter>table_name</parameter>, sur la connexion <parameter>link_identifier</parameter>. Un r&eacute;sultat de requ&ecirc;te est retourn&eacute;, et pourra &ecirc;tre utilis&eacute; avec les fonctions <function>fbsql_field_flags</function>, <function>fbsql_field_len</function>, <function>fbsql_field_name</function> et <function>fbsql_field_type</function>. </para> <para> Un identifiant de r&eacute;sultat est une ressource PHP, repr&eacute;sent&eacute;e par un entier positif. <function>fbsql_list_fields</function> retourne -1 en cas d'erreur. Une cha&icirc;ne d&eacute;crivant l'erreur sera alors plac&eacute;e dans la variable <literal>$phperrmsg</literal>. Un message d'erreur sera aussi affich&eacute;, &agrave; moins que la fonction n'ai &eacute;t&eacute; appel&eacute;e avec l'op&eacute;rateur de suppression des erreurs &#64;. </para> <para> <example> <title>Exemple avec <function>fbsql_list_fields</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect('localhost', 'myname', 'secret'); $fields = fbsql_list_fields("database1", "table1", $link); $columns = fbsql_num_fields($fields); for ($i = 0; $i &lt; $columns; $i++) { echo fbsql_field_name($fields, $i) . "\n";; } ?&gt; </programlisting> </example> </para> <para> L'exemple ci-dessus va afficher : <informalexample> <programlisting> field1 field2 field3 .. </programlisting> </informalexample> </para> </refsect1> </refentry> <refentry id="function.fbsql-list-tables"> <refnamediv> <refname>fbsql_list_tables</refname> <refpurpose>Liste les tables dans une base de donn&eacute;es FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_list_tables</function></funcdef> <paramdef>string <parameter>database</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_list_tables</function> liste les tables dans la base de donn&eacute;es <parameter>database</parameter>, et retourne un r&eacute;sultat, tout comme <function>fbsql_db_query</function>. <function>fbsql_tablename</function> sert &agrave; extraire la liste des tables dans ce r&eacute;sultat. </para> </refsect1> </refentry> <refentry id="function.fbsql-next-result"> <refnamediv> <refname>fbsql_next_result</refname> <refpurpose>D&eacute;place le pointeur interne vers le r&eacute;sultat suivant</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>bool <function>fbsql_next_result</function> </funcdef> <paramdef>int <parameter>result_id</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Lorsque vous envoyez plus d'une commande SQL au serveur, ou que vous ex&eacute;cutez une proc&eacute;dure stock&eacute;e avec de multiple r&eacute;sultats, cela va conduire le serveur &agrave; retourner plusieurs jeu de lignes. <function>fbsql_next_result</function> va v&eacute;rifier l'existence de plusieurs r&eacute;sultats disponibles sur le serveur. Si un autre jeu de r&eacute;sultat existe, <function>fbsql_next_result</function> va d&eacute;truire de r&eacute;sultat pr&eacute;c&eacute;dent, et pr&eacute;parer la lecture dans les nouvelles lignes. </para> <para> <function>fbsql_next_result</function> retourne <literal>TRUE</literal> si un autre r&eacute;sultat est disponbile, ou <literal>FALSE</literal> sinon. </para> <example> <title>Exemple avec <function>fbsql_next_result</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect ("localhost", "_SYSTEM", "secret"); fbsql_select_db("MyDB", $link); $SQL = "Select * from table1; select * from table2;"; $rs = fbsql_query($SQL, $link); do { while ($row = fbsql_fetch_row($rs)) { } } while (fbsql_next_result($rs)); fbsql_free_result($rs); fbsql_close ($link); ?&gt; </programlisting> </example> </refsect1> </refentry> <refentry id="function.fbsql-num-fields"> <refnamediv> <refname>fbsql_num_fields</refname> <refpurpose>Lit le nombre de champs dans un r&eacute;sultat</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_num_fields</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_num_fields</function> retourne le nombre de champs dans le r&eacute;sultat <parameter>result</parameter>. </para> <para> Voir aussi <function>fbsql_db_query</function>, <function>fbsql_query</function>, <function>fbsql_fetch_field</function> et <function>fbsql_num_rows</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-num-rows"> <refnamediv> <refname>fbsql_num_rows</refname> <refpurpose>Lit le nombre de lignes dans un r&eacute;sultat</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>int <function>fbsql_num_rows</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_num_rows</function> retourne le nombre de lignes dans le r&eacute;sultat <parameter>result</parameter>. Cette fonction n'est valable qu'avec les commandes SELECT. Pour conna&icirc;tre le nombre de lignes dans une requ&ecirc;te INSERT, UPDATE ou DELETE, utilisez <function>fbsql_affected_rows</function>. <example> <title>Exemple <function>fbsql_num_rows</function></title> <programlisting role="php"> &lt;?php $link = fbsql_connect("localhost", "username", "password"); fbsql_select_db("database", $link); $result = fbsql_query("SELECT * FROM table1;", $link); $num_rows = fbsql_num_rows($result); echo "$num_rows Rows\n"; ?&gt; </programlisting> </example> </para> <para> Voir aussi <function>fbsql_affected_rows</function>, <function>fbsql_connect</function>, <function>fbsql_select_db</function> et <function>fbsql_query</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-pconnect"> <refnamediv> <refname>fbsql_pconnect</refname> <refpurpose> Ouvre une connexion persistante &agrave; un serveur FrontBase </refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_pconnect</function></funcdef> <paramdef>string <parameter> <optional>hostname</optional> </parameter> </paramdef> <paramdef>string <parameter><optional>username</optional></parameter> </paramdef> <paramdef>string <parameter><optional>password</optional></parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_pconnect</function> retourne une ressource repr&eacute;sentant la connection au serveur FrontBase en cas de succ&egrave;s, ou bien <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_pconnect</function> &eacute;tablit une connexion persistante &agrave; un serveur FrontBase. En cas d'omission, les valeurs suivantes sont utilis&eacute;es par d&eacute;faut : <parameter>host</parameter> ='localhost', <parameter>username</parameter> = nom de l'utilisateur qui poss&egrave;de le processus, et <parameter>password</parameter> = pas de mot de passe. </para> <para> Pour choisir le port d'acc&egrave;s au serveur FrontBase, voyez <function>fbsql_select_db</function>. </para> <para> <function>fbsql_pconnect</function> se comporte comme <function>fbsql_connect</function> avec deux diff&eacute;rences majeures. </para> <para> Premi&egrave;rement, lors de la connexion, <function>fbsql_pconnect</function> essaie de trouver une connexion permanante d&eacute;j&agrave; ouverte sur cet hote, avec le m&ecirc;me nom d'utilisateur et de mot de passe. Si une telle connexion est trouv&eacute;e, son identifiant est retourn&eacute;, sans ouvrir de nouvelle connexion. </para> <para> Deuxi&egrave;mement, la connexion au serveur MySQL ne sera pas termin&eacute;e avec la fin du script. Au lieu de cela, le lien sera conserv&eacute; pour un prochain acc&egrave;s (<function>fbsql_close</function> ne terminera pas une connexion persistante &eacute;tablie par <function>fbsql_pconnect</function>). </para> <para> C'est pourquoi ce type de connexion est dite 'persistante'. </para> </refsect1> </refentry> <refentry id="function.fbsql-query"> <refnamediv> <refname>fbsql_query</refname> <refpurpose>Ex&eacute;cute une requ&ecirc;te sur un serveur FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_query</function></funcdef> <paramdef>string <parameter>query</parameter></paramdef> <paramdef>resource <parameter><optional>link_identifier</optional></parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_query</function> envoie la requ&ecirc;te <parameter>query</parameter> &agrave; la base de donn&eacute;es courante, sur le serveur repr&eacute;sent&eacute; par sa connexion <parameter>link_identifier</parameter>. Si <parameter>link_identifier</parameter> est omis, la derni&egrave;re connexion ouverte est utilis&eacute;e. Si aucune connexion n'a &eacute;t&eacute; ouverte, <function>fbsql_query</function> essaie d'&eacute;tablir une connexion en appelant la fonction <function>fbsql_connect</function> sans aucun argument. </para> <note> <para> La requ&ecirc;te doit &ecirc;tre termin&eacute;e par un point-virgule! </para> </note> <para> <function>fbsql_query</function> retourne une ressource en cas de succ&egrave;s, ou <literal>FALSE</literal>, en cas d'&eacute;chec. </para> <para> La requ&ecirc;te suivante est invalide, et <function>fbsql_query</function> &eacute;chouera puis retournera <literal>FALSE</literal>: <example> <title>Exemple avec <function>fbsql_query</function>(1)</title> <programlisting role="php"> &lt;?php $result = fbsql_query ("SELECT * WHERE 1=1;") or die("Requ&ecirc;te invalide"); ?&gt; </programlisting> </example> </para> <para> La requ&ecirc;te suivante est invalide si <literal>my_col</literal> n'est pas une colonne dans la table <literal>my_tbl</literal> : <function>fbsql_query</function> &eacute;chouera puis retournera <literal>FALSE</literal> : <example> <title>Exemple avec <function>fbsql_query</function>(2)</title> <programlisting role="php"> &lt;?php $result = fbsql_query ("SELECT my_col FROM my_tbl") or die ("Invalid query"); ?&gt; </programlisting> </example> </para> <para> <function>fbsql_query</function> &eacute;chouera si vous n'avez pas les droits d'acc&egrave;s sur l'une des bases de donn&eacute;es utilis&eacute;e dans la requ&ecirc;te. </para> <para> Lorsque la requ&ecirc;te r&eacute;ussit, vous pouvez utilisez <function>fbsql_num_rows</function> pour savoir combien de lignes ont &eacute;t&eacute; retourn&eacute;e par une requ&ecirc;te SELECT, ou bien <function>fbsql_affected_rows</function> pour les autres requ&ecirc;tes (DELETE, INSERT, REPLACE et UPDATE). </para> <para> Pour les requ&ecirc;tes SELECT, <function>fbsql_query</function> retourne une ressource de r&eacute;sultat, que vous pouvez passer &agrave; <function>fbsql_result</function>. Lors vous avez fini de lire le r&eacute;sultat, vous pouvez lib&eacute;rer les ressources utilis&eacute;es en appelant <function>fbsql_free_result</function>. Cependant, la m&eacute;moire sera automatiquement lib&eacute;r&eacute;e &agrave; la fin du script. </para> <para> Voir aussi <function>fbsql_affected_rows</function>, <function>fbsql_db_query</function>, <function>fbsql_free_result</function>, <function>fbsql_result</function>, <function>fbsql_select_db</function> et <function>fbsql_connect</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-result"> <refnamediv> <refname>fbsql_result</refname> <refpurpose>Lit des donn&eacute;es dans un r&eacute;sultat</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>mixed <function>fbsql_result</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter>row</parameter></paramdef> <paramdef>mixed <parameter> <optional>field</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_result</function> lit le contenu du champs <parameter>field</parameter>, dans la ligne <parameter>row</parameter>, du r&eacute;sultat <parameter>result</parameter>. L'argument <parameter>field</parameter> peut &ecirc;tre l'offset du champs, ou bien son nom, ou bien le nom de sa table plus point plus son nom. Si la colonne a &eacute;t&eacute; alias&eacute;e, utilisez de pr&eacute;f&eacute;rence l'alias. </para> <para> Lorsque vous travaillez sur de grands r&eacute;sultats, il est vivement recommand&eacute; d'utiliser les fonctions qui lisent toute une ligne d'un coup, plut&ocirc;t que <function>fbsql_result</function> qui travaille ligne par ligne. Elles sont beaucoup plus rapides. Notez aussi que les offset num&eacute;riques sont plus rapides que les offset nominaux. </para> <para> L'utilisation de <function>fbsql_result</function> ne doivent pas &ecirc;tre m&eacute;lang&eacute; avec d'autres fonctions qui utilisent aussi le r&eacute;sultat <parameter>result</parameter>. </para> <para> Alternative vivement recommand&eacute;es : <function>fbsql_fetch_row</function>, <function>fbsql_fetch_array</function> et <function>fbsql_fetch_object</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-select-db"> <refnamediv> <refname>fbsql_select_db</refname> <refpurpose>S&eacute;lectionne une base de donn&eacute;es FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>resource <function>fbsql_select_db</function></funcdef> <paramdef>string <parameter>database_name</parameter></paramdef> <paramdef>resource <parameter> <optional>link_identifier</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_select_db</function> retourne <literal>TRUE</literal> en cas de succ&egrave;s et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_select_db</function> remplace la base de donn&eacute;es active courante par <parameter>database_name</parameter>, sur la connexion ouverte et repr&eacute;sent&eacute;e par <parameter>link_identifier</parameter>. Si <parameter>link_identifier</parameter> est omis, la derni&egrave;re connexion ouverte sera utilis&eacute;e. Si aucune connexion n'a &eacute;t&eacute; ouverte, <function>fbsql_select_db</function> essaiera de se connecter en appelant <function>fbsql_connect</function> sans argument. </para> <para> Le client contacte FBExec pour conna&icirc;tre le num&eacute;ro de port &agrave; utiliser pour la connexion &agrave; la base de donn&eacute;es. Si le nom de la base est un num&eacute;ro, le syst&egrave;me l'utilisera comme num&eacute;ro de port, et ne le demandera pas &agrave; FBExec. Le serveur Frontbase peut &ecirc;tre d&eacute;marr&eacute; avec la commande : <literal>FRontBase -FBExec=No -port=&lt;port number&gt; &lt;database name&gt;</literal>. </para> <para> Tous les prochains appel &agrave; <function>fbsql_query</function> se feront dans la base <parameter>database_name</parameter>. </para> <para> Voir aussi <function>fbsql_connect</function>, <function>fbsql_pconnect</function> et <function>fbsql_query</function>. </para> </refsect1> </refentry> <refentry id="function.fbsql-tablename"> <refnamediv> <refname>fbsql_tablename</refname> <refpurpose>Lit le nom de la table d'un champs</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>string <function>fbsql_tablename</function></funcdef> <paramdef>resource <parameter>result</parameter></paramdef> <paramdef>int <parameter>i</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_tablename</function> retourne le nom de la table d'origine du champs <parameter>i</parameter>, dans le r&eacute;sultat <parameter>result</parameter>. La fonction <function>fbsql_num_rows</function> peut &ecirc;tre utilis&eacute;e pour conna&icirc;tre le nombre de tables dans un r&eacute;sultat. <example> <title>Exemple avec <function>fbsql_tablename</function></title> <programlisting role="php"> &lt;?php fbsql_connect ("localhost:3306"); $result = fbsql_list_tables ("wisconsin"); $i = 0; while ($i &lt; fbsql_num_rows ($result)) { $tb_names[$i] = fbsql_tablename ($result, $i); echo $tb_names[$i] . "&lt;br&gt;"; $i++; } ?&gt; </programlisting> </example> </para> </refsect1> </refentry> <refentry id="function.fbsql-warnings"> <refnamediv> <refname>fbsql_warnings</refname> <refpurpose>Active ou d&eacute;sactive les alertes FrontBase</refpurpose> </refnamediv> <refsect1> <title>Description</title> <funcsynopsis> <funcprototype> <funcdef>boolean <function>fbsql_warnings</function></funcdef> <paramdef>boolean <parameter> <optional>OnOff</optional> </parameter> </paramdef> </funcprototype> </funcsynopsis> <para> <function>fbsql_warnings</function> retourne <literal>TRUE</literal> si les alertes sont actives et <literal>FALSE</literal> en cas d'erreur. </para> <para> <function>fbsql_warnings</function> active ou d&eacute;sactive les alertes FrontBase suivant que <parameter>OnOff</parameter> est &agrave; <literal>TRUE</literal> ou <literal>FALSE</literal>. </para> </refsect1> </refentry> </reference> <!-- 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 sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: -->
« previous php.doc (#969335808) next »