Files
doc-fr/reference/session/book.xml
Yannick Torres a100a2127d Convert to UTF-8
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@297717 c90b9560-bf6c-de11-be94-00142212c4b1
2010-04-08 20:34:35 +00:00

112 lines
4.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->
<!-- Purpose: basic.session -->
<!-- Membership: core -->
<book xml:id="book.session" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Gestion des sessions</title>
<titleabbrev>Sessions</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.session">
&reftitle.intro;
<para>
Le support des sessions de PHP est un moyen de préserver
des données entre plusieurs accès. Cela vous permet de
créer des applications personnalisées, et d'augmenter
l'attrait de votre site.
</para>
<para>
Chaque visiteur accédant à votre page web se voit assigner un
identifiant unique, appelé "identifiant de session". Il peut
être stocké soit dans un cookie, soit propagé dans l'URL.
</para>
<para>
Le support des sessions vous permet d'enregistrer un
nombre illimité de variables qui doivent être préservées
entre les requêtes. Lorsqu'un visiteur accède à votre site,
PHP va vérifier automatiquement (si
<link linkend="ini.session.auto-start"><option>session.auto_start
</option></link> est activé) ou sur demande (explicitement avec
<function>session_start</function> ou implicitement avec
<function>session_register</function>) s'il existe une
session du même nom. Si c'est le cas, l'environnement
précédemment sauvé sera recréé.
</para>
<caution>
<para>
Si vous activez <link linkend="ini.session.auto-start">
session.auto_start</link> alors le seul moyen de mettre des objets
en session est de charger les définitions de classe avec
<link linkend="ini.auto-prepend-file">auto_prepend_file</link>
dans lequel vous chargez les définitions dont vous avez besoin,
ou bien vous devrez utiliser <function>serialize</function>
sur votre objet, et <function>unserialize</function>
pour le récupérer.
</para>
</caution>
<para>
Toutes les variables sont sérialisées après l'exécution du
script PHP. Les variables qui sont indéfinies sont marquées
comme telles. Lors des accès ultérieurs, elles ne seront pas
définies, jusqu'à ce que l'utilisateur le fasse.
</para>
<warning>
<para>
Quelques types de données ne peuvent pas être linéarisés pour être stockés
dans les sessions. Cela inclut les variables de type <type>resource</type>
ou les objets avec des références circulaires (i.e. objet qui passe une
référence à lui-même à un autre objet).
</para>
</warning>
<note>
<para>
Notez que lorsque vous travaillez avec les sessions, un enregistrement
dans la session ne sera pas créé tant que la variable ne sera pas
enregistrée en utilisant la fonction <function>session_register</function>
ou en ajoutant une clé à la variable super-globale
<varname>$_SESSION</varname>. Cela n'est vrai que si vous avez débuté une
session en appelant la fonction <function>session_start</function>.
</para>
</note>
<note>
<para>
PHP 5.2.2 a introduit une fonctionnalité non documentée pour stocker
dans le dossier "/tmp" même si <link linkend="ini.open-basedir">open_basedir</link>
est activé, et "/tmp" n'est pas explicitement ajouté dans les chemins autorisés.
Cette fonctionnalité a été retirée de PHP depuis PHP 5.3.0.
</para>
</note>
</preface>
<!-- }}} -->
&reference.session.setup;
&reference.session.constants;
&reference.session.examples;
&reference.session.security;
&reference.session.reference;
</book>
<!-- 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
-->