leszek Mon May 13 17:10:00 2002 EDT Modified files: /phpdoc-pl/reference/session reference.xml /phpdoc-pl/reference/session/functions session-cache-expire.xml session-cache-limiter.xml session-decode.xml session-destroy.xml session-encode.xml session-get-cookie-params.xml session-id.xml session-is-registered.xml session-module-name.xml session-name.xml session-readonly.xml session-register.xml session-save-path.xml session-set-cookie-params.xml session-set-save-handler.xml session-start.xml session-unregister.xml session-unset.xml session-write-close.xml Log: Updated session reference to newest version - 1.2, 1.3
Index: phpdoc-pl/reference/session/reference.xml diff -u phpdoc-pl/reference/session/reference.xml:1.2 phpdoc-pl/reference/session/reference.xml:1.3 --- phpdoc-pl/reference/session/reference.xml:1.2 Tue Apr 16 20:05:32 2002 +++ phpdoc-pl/reference/session/reference.xml Mon May 13 17:09:56 2002 @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- $Revision: 1.2 $ --> +<!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> +<!-- $Revision: 1.3 $ --> <reference id="ref.session"> <title>Sesje</title> <titleabbrev>Sesje</titleabbrev> @@ -13,7 +14,7 @@ </para> <para> Jeśli jesteś zaznajomiony z zarządzaniem sesją w PHPLIB, zauważysz że - pewnie koncepcje są podobne w obłudze sesji PHP. + pewnie koncepcje są podobne w obsłudze sesji PHP. </para> <para> Gość wchodzący na twoją stronę WWW otrzymuje unikalny identyfikator, tzw. @@ -32,7 +33,7 @@ <para> Wszystkie zarejestrowane zmienne są serializowane po wykonaniu całego kodu strony. Zarejestrowane zmienne, które są niezdefiniowane, są zaznaczane - jako niezdefijiowane. Nie są one definiowane przez moduł sesji w + jako niezdefiniowane. Nie są one definiowane przez moduł sesji w następujących po sobie wywołaniach, chyba że użytkownik zdefiniuje je później. </para> @@ -51,17 +52,27 @@ włączona. </para> </note> - + <note> + <para> + Od wersji PHP 4.1.0 dostępna jest globalna zmienna + <varname>$_SESSION</varname>, podobnie jak <varname>$_POST</varname>, + <varname>$_GET</varname>, <varname>$_REQUEST</varname> i tak dalej. W + odróżnieniu od <varname>$HTTP_SESSION_VARS</varname>, + <varname>$_SESSION</varname> jest zawsze globalna. W związku z tym + <literal>global</literal> nie powinno być użyte do + <varname>$_SESSION</varname>. + </para> + </note> <para> Jeśli włączona jest opcja <link linkend="ini.track-vars"><literal>track_vars</literal></link> a <link linkend="ini.register-globals"><literal>register_globals</literal></link> jest wyłączona, tylko pozycje należące do zmiennej asocjacyjnej - $HTTP_SESSION_VARS mogą być zarejestrowane jako zmienne sesyjne. - Odtworzone zmienne sesyjne będą dostępne tylko w zmiennej - $HTTP_SESSION_VARS. - <example> + <varname>$HTTP_SESSION_VARS</varname> mogą być zarejestrowane jako + zmienne sesyjne. Odtworzone zmienne sesyjne będą dostępne tylko w zmiennej + <varname>$HTTP_SESSION_VARS</varname>. + <example> <title> Rejestracja zmiennej z włączoną opcją <link linkend="ini.track-vars"><literal>track_vars</literal></link> @@ -69,8 +80,53 @@ <programlisting role="php"> <![CDATA[ <?php -session_register("count"); -$HTTP_SESSION_VARS["count"]++; +if (isset($HTTP_SESSION_VARS['count'])) { + $HTTP_SESSION_VARS['count']++; +} +else { + $HTTP_SESSION_VARS['count'] = 0; +} +?> +]]> + </programlisting> + </example> + </para> + <para> + Użycie <varname>$_SESSION</varname> (lub + <varname>$HTTP_SESSION_VARS</varname> dla wersji PHP 4.0.6 i starszych) + jest wskazane ze względów bezpieczeństwa i czytelności kodu. Używając + <varname>$_SESSION</varname> lub <varname>$HTTP_SESSION_VARS</varname> nie + ma potrzeby używać funkcji + session_register()/session_unregister()/session_is_registered(). + Użytkownicy mogą uzyskiwać dostęp do zmiennych sesyjnych tak jak do + normalnych zmiennych. + <example> + <title> + Rejestrowanie zmiennych przez $_SESSION + </title> + <programlisting role="php"> +<![CDATA[ +<?php +// Użyj $HTTP_SESSION_VARS dla PHP 4.0.6 i starszych +if (!isset($_SESSION['count'])) { + $_SESSION['count'] = 0; +} else { + $_SESSION['count']++; +} +?> +]]> + </programlisting> + </example> + <example> + <title> + Wyrejestrowywanie zmiennej korzystając z $_SESSION + </title> + <programlisting role="php"> +<![CDATA[ +<?php +// Użyj $HTTP_SESSION_VARS dla PHP 4.0.6 i starszych +unset($_SESSION['count']); + ?> ]]> </programlisting> @@ -81,17 +137,46 @@ linkend="ini.register-globals"><literal>register_globals</literal></link>, wszystkie globalne zmienne mogą być zarejestrowane jako zmienne sesyjne a zmienne sesyjne będą odtworzone do odpowiadających im zmiennych - globalnych. - <example> + globalnych. Ponieważ PHP musi wiedzieć które globalne zmienne są + zarejestrowane jako zmienne sesyjne, użytkownik musi użyć funkcji + session_register() podczas gdy + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname> nie + muszą używać session_register(). + <caution> + <para> + Jeśli używane są tablice + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname> i + i wyłączona jest opcja <link + linkend="ini.register-globals"><literal>register_globals</literal></link>, + nie powinno się używać <function>session_register</function>, + <function>session_is_registered</function> i + <function>session_unregister</function>. + </para> + <para> + Jeśli włączona zostanie opcja <link + linkend="ini.register-globals"><literal>register_globals</literal></link>, + powinno się używać <function>session_unregister</function> ponieważ + zmienne sesyjne są rejestrowane jako zmienne globalne kiedy dane sesyjne + są deserializowane. Wyłączenie <link + linkend="ini.register-globals"><literal>register_globals</literal></link> + jest zalecane ze względów bezpieczeństwa i wydajności. + </para> + </caution> + <example> <title> - Rejestracja zminnych z włączoną opcją <link + Rejestracja zmiennych z włączoną opcją <link linkend="ini.register-globals"><literal>register_globals</literal></link> </title> <programlisting role="php"> <![CDATA[ <?php -session_register("count"); -$count++; +if (!session_is_registered('cound')) { + session_register('count'); + $count = 0; +} +else { + $count++; +} ?> ]]> </programlisting> @@ -102,8 +187,16 @@ linkend="ini.track-vars"><literal>track_vars</literal></link> i <link linkend="ini.register-globals"><literal>register_globals</literal></link>, - globalne zmienne i wpisy w $HTTP_SESSION_VARS będą referencjami do tej - samej wartości. + globalne zmienne i wpisy w + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname> + będą referencjami do tej samej, już zarejestrowanej zmiennej. + </para> + <para> + Jeśli użytkownik użyje session_register() do zarejestrowania zmiennej + sesyjnej, + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname> nie + będą zawierały tych zmiennych w tablicy dopóki nie zostanie ona odczytana + z miejsca przechowywania sesji (np. do czasu następnego wywołania). </para> <para> Istnieją dwie metody propagacji identyfikatora sesji: @@ -144,18 +237,24 @@ <programlisting role="php"> <![CDATA[ <?php -session_register ("count"); -$count++; +if (!session_is_registered('count')) { + session_register('count'); + $count = 1; +} +else { + $count++; +} ?> Witaj gościu. Oglądasz tą stronę <?php echo $count; ?> raz.<p> <?php -# <?=SID?> jest konieczne do zachowania identyfikatora sesji jeśli -# użytkownik wyłączył ciastka +# <?php echo SID?> (<?=SID?> może być użyte jeśli włączona jest możliwość +# używania krótkich tagów) jest konieczne do zachowania identyfikatora +# sesji jeśli użytkownik wyłączył ciastka ?> -Aby kontynuować, <A HREF="nextpage.php?<?=SID?>">kliknij tutaj</A> +Aby kontynuować, <A HREF="nextpage.php?<?php echo SID?>">kliknij tutaj</A> ]]> </programlisting> </example> @@ -181,7 +280,7 @@ </para> <para> System zarządzania sesją obsługuje wiele opcji konfiguracyjnych, które - możesz wstawić do swojego pliku php.ini. Oto ich krótki przegląd. + możesz wstawić do swojego pliku &php.ini;. Oto ich krótki przegląd. <itemizedlist> <listitem> <simpara> @@ -195,7 +294,9 @@ <literal>session.save_path</literal> definiuje argument, który jest przekazywany procedurze obsługi zapisu danych. Jeśli wybierzesz domyślną procedurę obsługi, jest to ścieżka gdzie tworzone będą pliki z - danymi. Domyślnie <literal>/tmp</literal>. + danymi. Domyślnie <literal>/tmp</literal>. Jeśli głębokość ścieżki + określonej w parametrze <literal>session.save_path</literal> jest + większa niż 2, nie przeprowadzone zostanie zbieranie śmieci. </simpara> <warning> <para> Index: phpdoc-pl/reference/session/functions/session-cache-expire.xml diff -u phpdoc-pl/reference/session/functions/session-cache-expire.xml:1.2 phpdoc-pl/reference/session/functions/session-cache-expire.xml:1.3 --- phpdoc-pl/reference/session/functions/session-cache-expire.xml:1.2 Wed Apr 17 03:16:14 2002 +++ phpdoc-pl/reference/session/functions/session-cache-expire.xml Mon May 13 +17:09:58 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-cache-expire' in en/ tree in rev 1.38 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.38 --> +<!-- $Revision: 1.3 $ --> <refentry id='function.session-cache-expire'> <refnamediv> <refname>session_cache_expire</refname> Index: phpdoc-pl/reference/session/functions/session-cache-limiter.xml diff -u phpdoc-pl/reference/session/functions/session-cache-limiter.xml:1.2 phpdoc-pl/reference/session/functions/session-cache-limiter.xml:1.3 --- phpdoc-pl/reference/session/functions/session-cache-limiter.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-cache-limiter.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.8 --> -<!-- last change to 'session-cache-limiter' in en/ tree in rev 1.62 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.62 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-cache-limiter"> <refnamediv> <refname>session_cache_limiter</refname> Index: phpdoc-pl/reference/session/functions/session-decode.xml diff -u phpdoc-pl/reference/session/functions/session-decode.xml:1.2 phpdoc-pl/reference/session/functions/session-decode.xml:1.3 --- phpdoc-pl/reference/session/functions/session-decode.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-decode.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-decode' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-decode"> <refnamediv> <refname>session_decode</refname> Index: phpdoc-pl/reference/session/functions/session-destroy.xml diff -u phpdoc-pl/reference/session/functions/session-destroy.xml:1.2 phpdoc-pl/reference/session/functions/session-destroy.xml:1.3 --- phpdoc-pl/reference/session/functions/session-destroy.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-destroy.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-destroy' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-destroy"> <refnamediv> <refname>session_destroy</refname> @@ -30,15 +28,33 @@ <![CDATA[ <?php -# Inicjalizuj sesję -# Jeśli używasz sesion_name("cośtam"), nie zapomnij o tym teraz! +// Inicjalizuj sesję +// Jeśli używasz sesion_name("cośtam"), nie zapomnij o tym teraz! session_start(); -# Usuń wszystkie zmienne sesyjne +// Usuń wszystkie zmienne sesyjne session_unset(); -# Na koniec, zniszcz sesję +// Na koniec, zniszcz sesję session_destroy(); ?> +]]> + </programlisting> + </example> + </para> + <para> + <example> + <title>Niszczenie sesji używając $_SESSION</title> + <programlisting role="php"> +<![CDATA[ +<?php + +// Inicjalizuj sesję +// Jeśli używasz session_name("coś"), nie zapomnij o tym teraz! +session_start(); +// Usuń wszystkie zmienne sesyjne +$_SESSION = array(); +// Na koniec zniszcz sesję +session_destroy(); ]]> </programlisting> </example> Index: phpdoc-pl/reference/session/functions/session-encode.xml diff -u phpdoc-pl/reference/session/functions/session-encode.xml:1.2 phpdoc-pl/reference/session/functions/session-encode.xml:1.3 --- phpdoc-pl/reference/session/functions/session-encode.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-encode.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-encode' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-encode"> <refnamediv> <refname>session_encode</refname> Index: phpdoc-pl/reference/session/functions/session-get-cookie-params.xml diff -u phpdoc-pl/reference/session/functions/session-get-cookie-params.xml:1.2 phpdoc-pl/reference/session/functions/session-get-cookie-params.xml:1.3 --- phpdoc-pl/reference/session/functions/session-get-cookie-params.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-get-cookie-params.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-get-cookie-params' in en/ tree in rev 1.8 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.8 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-get-cookie-params"> <refnamediv> <refname>session_get_cookie_params</refname> Index: phpdoc-pl/reference/session/functions/session-id.xml diff -u phpdoc-pl/reference/session/functions/session-id.xml:1.2 phpdoc-pl/reference/session/functions/session-id.xml:1.3 --- phpdoc-pl/reference/session/functions/session-id.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-id.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-id' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-id"> <refnamediv> <refname>session_id</refname> Index: phpdoc-pl/reference/session/functions/session-is-registered.xml diff -u phpdoc-pl/reference/session/functions/session-is-registered.xml:1.2 phpdoc-pl/reference/session/functions/session-is-registered.xml:1.3 --- phpdoc-pl/reference/session/functions/session-is-registered.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-is-registered.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-is-registered' in en/ tree in rev 1.8 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.8 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-is-registered"> <refnamediv> <refname>session_is_registered</refname> @@ -21,6 +19,24 @@ bieżącej sesji zarejestrowana jest zmienna o nazwie <parameter>nazwa</parameter>. </para> + <note> + <para> + Jeśli użyta została tablica <varname>$_SESSION</varname> (lub + <varname>$HTTP_SESSION_VARS</varname> dla PHP 4.0.6 lub starszych), do + sprawdzenia czy zmienna została zarejestrowana w sesji należy użyć + funkcji <function>isset</function> na tablicy + <varname>$_SESSION</varname>. + </para> + </note> + <caution> + <para> + Przy użyciu + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname>, nie + należy używać <function>session_register</function>, + <function>session_is_registered</function> i + <function>session_unregister</function>. + </para> + </caution> </refsect1> </refentry> Index: phpdoc-pl/reference/session/functions/session-module-name.xml diff -u phpdoc-pl/reference/session/functions/session-module-name.xml:1.2 phpdoc-pl/reference/session/functions/session-module-name.xml:1.3 --- phpdoc-pl/reference/session/functions/session-module-name.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-module-name.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-module-name' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-module-name"> <refnamediv> <refname>session_module_name</refname> Index: phpdoc-pl/reference/session/functions/session-name.xml diff -u phpdoc-pl/reference/session/functions/session-name.xml:1.2 phpdoc-pl/reference/session/functions/session-name.xml:1.3 --- phpdoc-pl/reference/session/functions/session-name.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-name.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-name' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-name"> <refnamediv> <refname>session_name</refname> @@ -35,7 +33,7 @@ <![CDATA[ <?php -# ustaw nazwę sesji na WebsiteID +// ustaw nazwę sesji na WebsiteID $poprzednia_nazwa = session_name ("WebsiteID"); Index: phpdoc-pl/reference/session/functions/session-readonly.xml diff -u phpdoc-pl/reference/session/functions/session-readonly.xml:1.2 phpdoc-pl/reference/session/functions/session-readonly.xml:1.3 --- phpdoc-pl/reference/session/functions/session-readonly.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-readonly.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-readonly' in en/ tree in rev 1.25 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.25 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-readonly"> <refnamediv> <refname>session_readonly</refname> Index: phpdoc-pl/reference/session/functions/session-register.xml diff -u phpdoc-pl/reference/session/functions/session-register.xml:1.2 phpdoc-pl/reference/session/functions/session-register.xml:1.3 --- phpdoc-pl/reference/session/functions/session-register.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-register.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-register' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-register"> <refnamediv> <refname>session_register</refname> @@ -32,6 +30,15 @@ używając tablic sesyjnych, tak jak to opisano poniżej. </para> </caution> + <caution> + <para> + Przy użyciu + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname> nie + powinno się używać <function>session_register</function>, + <function>session_is_registered</function> i + <function>session_unregister</function>. + </para> + </caution> <para> Funkcja ta zwraca wartość &true; jeśli wszystkie zmienne zostały pomyślnie zarejestrowane w sesji. @@ -43,7 +50,8 @@ </para> <para> Możesz tworzyć zmienne sesyjne poprostu przez dopisywanie odpowiednicz - wpisów do tablic $HTTP_SESSION_VARS lub $_SESSION (PHP >= 4.1.0). + wpisów do tablic <varname>$HTTP_SESSION_VARS</varname> lub + <varname>$_SESSION</varname> (PHP >= 4.1.0). <informalexample> <programlisting role="php"> <![CDATA[ @@ -68,6 +76,12 @@ zwracanie typu <literal>resource</literal> w definicji funkcji. Listę funkcji, które zwracają zasoby, można znaleźć w załączniku <link linkend="resource">typy zasobów</link>. + </para> + <para> + Jeśli użyta jest tablica <varname>$_SESSION</varname> (lub + <varname>$HTTP_SESSION_VARS</varname> dla PHP 4.0.6 i starszych), + przypisz zmienną do <varname>$_SESSION</varname>, na przykład + $_SESSION['var'] = 'ABC'; </para> </note> <para> Index: phpdoc-pl/reference/session/functions/session-save-path.xml diff -u phpdoc-pl/reference/session/functions/session-save-path.xml:1.2 phpdoc-pl/reference/session/functions/session-save-path.xml:1.3 --- phpdoc-pl/reference/session/functions/session-save-path.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-save-path.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-save-path' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-save-path"> <refnamediv> <refname>session_save_path</refname> Index: phpdoc-pl/reference/session/functions/session-set-cookie-params.xml diff -u phpdoc-pl/reference/session/functions/session-set-cookie-params.xml:1.2 phpdoc-pl/reference/session/functions/session-set-cookie-params.xml:1.3 --- phpdoc-pl/reference/session/functions/session-set-cookie-params.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-set-cookie-params.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-set-cookie-params' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-set-cookie-params"> <refnamediv> <refname>session_set_cookie_params</refname> Index: phpdoc-pl/reference/session/functions/session-set-save-handler.xml diff -u phpdoc-pl/reference/session/functions/session-set-save-handler.xml:1.2 phpdoc-pl/reference/session/functions/session-set-save-handler.xml:1.3 --- phpdoc-pl/reference/session/functions/session-set-save-handler.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-set-save-handler.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-set-save-handler' in en/ tree in rev 1.23 --> -<!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.23 --> +<!-- EN-Revision: 1.3 Maintainer: leszek Status: ready --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-set-save-handler"> <refnamediv> <refname>session_set_save_handler</refname> @@ -13,7 +11,7 @@ <refsect1> <title>Opis</title> <methodsynopsis> - <type>void</type><methodname>session_set_save_handler</methodname> + <type>bool</type><methodname>session_set_save_handler</methodname> <methodparam><type>string</type><parameter>otwórz</parameter></methodparam><methodparam><type>string</type><parameter>zamknij</parameter></methodparam><methodparam><type>string</type><parameter>czytaj</parameter></methodparam><methodparam><type>string</type><parameter>zapisz</parameter></methodparam><methodparam><type>string</type><parameter>niszcz</parameter></methodparam><methodparam><type>string</type><parameter>gc</parameter></methodparam> </methodsynopsis> <para> @@ -23,10 +21,11 @@ preferowany jest sposób przechowywania sesji inny niż ten, który jest dostarczany z PHP, np. przechowywanie danych sesji w lokalnej bazie danych. + &return.success; </para> <note> <para> - W swoim pliku php.ini musisz ustawić opcję konfiguracji + W swoim pliku &php.ini; musisz ustawić opcję konfiguracji <parameter>session.save_handler</parameter> na <parameter>user</parameter> aby <function>session_set_save_handler</function> zadziałało. @@ -48,6 +47,13 @@ obsługiwaną przez PHP. </para> <para> + Funkcja czytająca zawsze musi zwracać ciąg aby procedura obsługi działała + zgodnie z przewidywaniami. Zwróć pusty ciąg jeśli nie ma żadnych danych + do odczytania. Wartości zwracane przez inne procedury obsługi są + konwertowane na wyrażenia logiczne. TRUE dla sukcesu, FALSE dla + niepowodzenia. + </para> + <para> <example> <title> Przykład <function>session_set_save_handler</function> @@ -76,7 +82,7 @@ $sess_data = fread($fp, filesize($sess_file)); return($sess_data); } else { - return(""); + return(""); // Zawsze musi zwracać "" } } Index: phpdoc-pl/reference/session/functions/session-start.xml diff -u phpdoc-pl/reference/session/functions/session-start.xml:1.2 phpdoc-pl/reference/session/functions/session-start.xml:1.3 --- phpdoc-pl/reference/session/functions/session-start.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-start.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-start' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-start"> <refnamediv> <refname>session_start</refname> @@ -33,6 +31,21 @@ <function>session_start</function> musi być wywołane przed wysłaniem jakichkolwiek danych do przeglądarki. </para> + </note> + <simpara> + <function>session_start</function> zarejestruje wewnętrzny uchwyt obsługi + wyjścia dla przepisywania URLi jeśli włączona jest opcja + <literal>trans-sid</literal>. Jeśli użytkownik używa + <literal>ob_gzhandler</literal> lub podobne z + <function>ob_start</function>, kolejność uchwytów obsługi wyjścia jest + ważna dla prawidłowego wyjścia. Na przykład, użytkownik musi + zarejestrować <literal>ob_gzhandler</literal> przed rozpoczęciem sesji. + </simpara> + <note> + <simpara> + Wskazane jest użycie <literal>zlib.output_compression</literal> zamiast + <literal>ob_gzhandler</literal> + </simpara> </note> </refsect1> </refentry> Index: phpdoc-pl/reference/session/functions/session-unregister.xml diff -u phpdoc-pl/reference/session/functions/session-unregister.xml:1.2 phpdoc-pl/reference/session/functions/session-unregister.xml:1.3 --- phpdoc-pl/reference/session/functions/session-unregister.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-unregister.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-unregister' in en/ tree in rev 1.2 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.2 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-unregister"> <refnamediv> <refname>session_unregister</refname> @@ -24,12 +22,28 @@ Funkcja ta zwraca wartość &true; jeśli zmienna została pomyślnie wyrejestrowana z sesji. </para> + <note> + <para> + Jeśli użyta została tablica <varname>$_SESSION</varname> (lub + <varname>$HTTP_SESSION_VARS</varname> dla PHP 4.0.6 i starszych), użyj + <function>unset</function> aby wyrejestrować zmienną z sesji. + </para> + </note> <caution> <para> Ta funkcja nie usuwa zmiennej globalnej o nazwie <parameter>nazwa</parameter>, a jedynie zapobiega zapisaniu tej zmiennej jako części sesji. Jeśli chcesz usunąć odpowiednią zmienną globalną, musisz użyć funkcji <function>unset</function>. + </para> + </caution> + <caution> + <para> + Jeśli używasz + <varname>$HTTP_SESSION_VARS</varname>/<varname>$_SESSION</varname>, nie + używaj <function>session_register</function>, + <function>session_is_registered</function> i + <function>session_unregister</function>. </para> </caution> </refsect1> Index: phpdoc-pl/reference/session/functions/session-unset.xml diff -u phpdoc-pl/reference/session/functions/session-unset.xml:1.2 phpdoc-pl/reference/session/functions/session-unset.xml:1.3 --- phpdoc-pl/reference/session/functions/session-unset.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-unset.xml Mon May 13 17:09:59 +2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-unset' in en/ tree in rev 1.8 --> -<!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.8 --> +<!-- EN-Revision: 1.3 Maintainer: leszek Status: ready --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-unset"> <refnamediv> <refname>session_unset</refname> @@ -20,6 +18,13 @@ Funkcja <function>session_unset</function> zwalnia wszystkie zmienne sesyjne, które są aktualnie zarejestrowane. </para> + <note> + <para> + Jeśli użyta została tablica <varname>$_SESSION</varname> (lub + <varname>$HTTP_SESSION_VARS</varname> dla PHP 4.0.6 i starszych), aby + wyrejestrować zmienną z sesji należy użyć <function>unset</function>. + </para> + </note> </refsect1> </refentry> Index: phpdoc-pl/reference/session/functions/session-write-close.xml diff -u phpdoc-pl/reference/session/functions/session-write-close.xml:1.2 phpdoc-pl/reference/session/functions/session-write-close.xml:1.3 --- phpdoc-pl/reference/session/functions/session-write-close.xml:1.2 Wed Apr 17 03:16:15 2002 +++ phpdoc-pl/reference/session/functions/session-write-close.xml Mon May 13 +17:09:59 2002 @@ -1,8 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- splitted from ./pl/functions/session.xml, last change in rev 1.1 --> -<!-- last change to 'session-write-close' in en/ tree in rev 1.38 --> <!-- EN-Revision: 1.2 Maintainer: leszek Status: ready --> -<!-- OLD-Revision: 1.70/EN.1.38 --> +<!-- $Revision: 1.3 $ --> <refentry id="function.session-write-close"> <refnamediv> <refname>session_write_close</refname>