<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 15617 -->
<!-- Reviewed: no -->
<sect3 id="zend.db.profiler.profilers.firebug">
    <title>Profiler avec Firebug</title>

    <para>
        <classname>Zend_Db_Profiler_Firebug</classname> envoie des informations de profilage
        vers la <ulink url="http://www.getfirebug.com/">console Firebug</ulink>.
    </para>

    <para>
        Toutes les données sont envoyées via le composant
        <classname>Zend_Wildfire_Channel_HttpHeaders</classname> qui utilise les en-têtes HTTP pour
        s'assurer que le contenu de la page n'est pas perturbé. Déboguer les requêtes AJAX qui
        requière du JSON "propre" ou un réponse XML est possible avec cette approche.
    </para>

    <para>Éléments requis&#160;:</para>

    <itemizedlist>
        <listitem>
            <para>
                Navigateur Firefox idéalement en version 3 mais la version 2 est aussi
                supportée.
            </para>
        </listitem>

        <listitem>
            <para>
                L'extension Firefox nommée Firebug qui peut être téléchargée à cette adresse
                <ulink url="https://addons.mozilla.org/en-US/firefox/addon/1843">https://addons.mozilla.org/en-US/firefox/addon/1843</ulink>.
            </para>
        </listitem>

        <listitem>
            <para>
                L'extension Firefox nommée FirePHP qui peut être téléchargée à cette adresse
                <ulink url="https://addons.mozilla.org/en-US/firefox/addon/6149">https://addons.mozilla.org/en-US/firefox/addon/6149</ulink>.
            </para>
        </listitem>
    </itemizedlist>

    <example id="zend.db.profiler.profilers.firebug.example.with_front_controller">
        <title>Profilage de base de données avec Zend_Controller_Front</title>

        <programlisting language="php"><![CDATA[
// Dans votre fichier d'amorçage
$profiler = new Zend_Db_Profiler_Firebug('All DB Queries');
$profiler->setEnabled(true);

// Attacher le profileur à votre adaptateur de base de données
$db->setProfiler($profiler)

// Distribuer votre contrôleur frontal

// Toutes les requêtes dans vos fichiers de modèles, vues et
// contrôleurs seront maintenant profilées et envoyées à Firebug
]]></programlisting>
    </example>

    <example id="zend.db.profiler.profilers.firebug.example.without_front_controller">
        <title>Profilage de base de données sans Zend_Controller_Front</title>

        <programlisting language="php"><![CDATA[
$profiler = new Zend_Db_Profiler_Firebug('All DB Queries');
$profiler->setEnabled(true);

// Attacher le profileur à votre adaptateur de base de données
$db->setProfiler($profiler)

$request  = new Zend_Controller_Request_Http();
$response = new Zend_Controller_Response_Http();
$channel  = Zend_Wildfire_Channel_HttpHeaders::getInstance();
$channel->setRequest($request);
$channel->setResponse($response);

// Démarrer l'output buffering
ob_start();

// Maintenant vous pouvez lancer les requêtes
// qui doivent être profilées

// Envoi des données de profiling vers le navigateur
$channel->flush();
$response->sendHeaders();
]]></programlisting>
    </example>
</sect3>