mirror of
https://github.com/php/doc-tr.git
synced 2026-03-24 15:22:23 +01:00
145 lines
4.7 KiB
XML
145 lines
4.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 682510e91d1f19fb59d2f7aef6ab370e8af842a1 Maintainer: nilgun Status: ready -->
|
||
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.session-destroy">
|
||
<refnamediv>
|
||
<refname>session_destroy</refname>
|
||
<refpurpose>Bir oturumla ilişkilendirilmiş tüm veriyi yokeder</refpurpose>
|
||
</refnamediv>
|
||
|
||
<refsect1 role="description">
|
||
&reftitle.description;
|
||
<methodsynopsis>
|
||
<type>bool</type><methodname>session_destroy</methodname>
|
||
<void/>
|
||
</methodsynopsis>
|
||
<simpara>
|
||
<function>session_destroy</function> işlevi geçerli oturumla
|
||
ilişkilendirilmiş tüm veriyi yok eder. Oturumla ilişkilendirilmiş küresel
|
||
değişkenleri ve oturum çerezini tanımsız yapmaz. Oturum değişkenlerini
|
||
tekrar kullanmak için <function>session_start</function> çağrısı
|
||
yapılmalıdır.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Normal koddan <function>session_destroy</function> çağrısı gerekmez.
|
||
Oturum verilerini yok etmek yerine $ _SESSION dizisini temizleyin.
|
||
</simpara>
|
||
</note>
|
||
<para>
|
||
Kullanıcı çıktısını günlüğe kaydetmek gibi bir amaçla oturumu topyekün
|
||
öldürmek için oturum kimliğinin de tanımsız yapılması gerekir. Eğer oturum
|
||
kimliğini yaymak için bir çerez kullanılmışsa (öntanımlı olarak böyledir),
|
||
oturum çerezinin de silinmesi gerekir. Bunun için
|
||
<function>setcookie</function> kullanılabilir.
|
||
</para>
|
||
<para>
|
||
<link linkend="ini.session.use-strict-mode">session.use_strict_mode</link>
|
||
etkinleştirildiğinde, eski oturum kimliği çerezini kaldırmanız gerekmez
|
||
çünkü oturum modülü, oturum kimliği ile ilişkilendirilmiş veri olmadığında
|
||
oturum kimliği çerezini kabul etmez ve yeni oturum kimliği çerezi tanımlar.
|
||
Tüm siteler için <literal>session.use_strict_mode</literal> yönergesinin
|
||
etkinleştirilmesi önerilir.
|
||
</para>
|
||
<warning>
|
||
<para>
|
||
Anında oturum silme istenmeyen sonuçlara sebep olabilir. Eşzamanlı istekler
|
||
olduğunda, diğer bağlantılarda ani oturum verisi kaybı görülebilir.
|
||
Örneğin, JavaScript'ten ve/veya URL bağlantılarından gelen istekler.
|
||
</para>
|
||
<para>
|
||
Geçerli oturum modülü boş oturum kimliği çerezini kabul etmese de, oturumun
|
||
anında silinmesi, istemcinin (tarayıcı) yarış durumu yan etkisi nedeniyle,
|
||
gereksiz yere çok sayıda boş oturum kimliği çerezi oluşturmasına sebep
|
||
olabilir.
|
||
</para>
|
||
<para>
|
||
Bunlardan kaçınmak için, silme zaman damgasını $ _SESSION dizisine atamalı
|
||
ve bu zaman damgasından sonraki erişimi reddetmeli veya uygulamanızın
|
||
eşzamanlı istekleri olmadığından emin olmalısınız. Bu aynı zamanda
|
||
<function>session_regenerate_id</function> için de geçerlidir.
|
||
</para>
|
||
</warning>
|
||
</refsect1>
|
||
|
||
<refsect1 role="parameters">
|
||
&reftitle.parameters;
|
||
&no.function.parameters;
|
||
</refsect1>
|
||
|
||
<refsect1 role="returnvalues">
|
||
&reftitle.returnvalues;
|
||
<para>
|
||
&return.success;
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="examples">
|
||
&reftitle.examples;
|
||
<para>
|
||
<example>
|
||
<title>- Bir oturumun <varname>$_SESSION</varname> ile yokedilmesi</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
// Oturumu ilklendirelim.
|
||
// session_name("birisim") kullanacaksanız tam sırasıdır!
|
||
session_start();
|
||
|
||
// Oturum değişkenlerinin tamamını tanımsız yapalım.
|
||
$_SESSION = array();
|
||
|
||
// Oturum öldürülmek istenirse oturum çerezinin de silinmesi gerekir.
|
||
// Dikkat: Bu sadece oturum verisini değil, oturumu da yok edecektir!
|
||
if (ini_get("session.use_cookies")) {
|
||
$params = session_get_cookie_params();
|
||
setcookie(session_name(), '', time() - 42000,
|
||
$params["path"], $params["domain"],
|
||
$params["secure"], $params["httponly"]
|
||
);
|
||
}
|
||
|
||
// Son olarak oturumu yok ediyoruz.
|
||
session_destroy();
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="seealso">
|
||
&reftitle.seealso;
|
||
<para>
|
||
<simplelist>
|
||
<member><link linkend="ini.session.use-strict-mode">session.use_strict_mode</link></member>
|
||
<member><function>session_reset</function></member>
|
||
<member><function>session_regenerate_id</function></member>
|
||
<member><function>unset</function></member>
|
||
<member><function>setcookie</function></member>
|
||
</simplelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
</refentry>
|
||
|
||
<!-- 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
|
||
-->
|