Laravel Türkiye Discord Kanalı Forumda kod paylaşılırken dikkat edilmesi gerekenler!Birlikte proje geliştirmek ister misiniz?

Merhaba,

Seçim yaptırdığım bir alan var. Bunu livewire tarafından blade ilk parse edildiğinde ilk değer seçili gelecek şekilde kayıt ediyorum. Kullanıcı farklı sayfaları dolaşıp döndüğünde bu seçimini browsera kaydedip kontrol etmek istiyorum. Bu işlemi nasıl yapabilirim.

    YalcinSahin İşinize yarar mı bilmiyorum fakat geçenlerde buna benzer bişeyi jquery içerisinde localStorage diye bir kullanımla çözmüştüm

      YalcinSahin Hocam bende chatgpt ile kullanmıştım localStorage'yi yanlış yönlendirmek istemem

      10 gün sonra

      mgsmus

      Session sunucu tarafında tutulması gerekmiyor mu hocam ? Ayrıca tarayıcıyı kapatırsa ben bunlar siliniyor diye biliyorum. Ben kullanıcı alışkanlıklarını browser kaydedip sonrasında bunları kullanmayı düşünüyorum. Seçimini kendi elle değiştirirse buradaki datayı temizleyip yeniden oluşturmak da ayrıca hedeflerim arasında. Tabi bunları livewire ile entegre edeceğim.

      İki kullanımı da ChatGPT sordum. Bu şekilde bilgi veriyor. Sizin görüşünüz nedir ? Session mu ilerleyeyim. Amacımı şu şekilde düşünebilirsiniz. Açılan bir sayfa veya filtreleme seçenekleri var. Kullanıcı bunları çok kullanıyor. Gidip döndüğünde aynı sayfadaki seçenekleri her zaman kullandığı gibi kalsın. Sıfırlanmasın. Ya da istediği sayfa açılsın hep.

      Session (Oturum) Depolama:

      • Sunucu Tarafında Tutulur: Oturum depolaması, sunucu tarafında tutulan verileri ifade eder. Sunucu tarafında depolandığı için, bu verilere sunucu tarafından erişilebilir ve güncellenebilir.
        -
      • Kısa Ömürlüdür: Oturum verileri, tarayıcı kapatıldığında veya oturum sonlandığında genellikle silinir. Kullanıcı tarayıcıyı kapattığında oturum verileri kaybolur.
        -
      • Güvenli: Oturum verileri, tarayıcı tarafından doğrudan erişilemez ve manipüle edilemez. Bu nedenle hassas veriler için daha güvenlidir.
        -
      • Kullanım Durumu: Oturum verileri, oturum (session) boyunca kullanılabilir ve özellikle kimlik doğrulama bilgileri gibi geçici veriler için uygundur.

      Local Storage (Yerel Depolama):

      • Tarayıcı Tarafında Tutulur: Local Storage, tarayıcı tarafında tutulan verileri ifade eder. Bu verilere JavaScript kodları ile tarayıcıdan erişilebilir ve kullanılabilir.
        -
      • Uzun Ömürlüdür: Local Storage verileri, kullanıcı tarafından manuel olarak silinmediği sürece genellikle uzun süre saklanır. Tarayıcı kapatılsa bile kalır.
        -
      • Güvenlik: Local Storage verileri, tarayıcı tarafından erişilebilir ve kullanıcı tarafından değiştirilebilir. Bu nedenle hassas veriler için uygun değildir.
        -
      • Kullanım Durumu: Local Storage, oturum süresi boyunca değil, kalıcı verilerin saklanması için kullanılır. Örneğin, kullanıcının tercihleri veya sayfa durumu gibi veriler için uygundur.

        YalcinSahin Session kullanıldığında, session başlayınca Laravel seçilen sürücüye göre bir session girdisi ve tarayıcı için içinde session id tuttuğu bir cookie oluşturur. Bu cookie her isteğe dahil edilerek kullanıcının giriş yapma durumu devam ettirilir. Cookie içindeki id ile kayıtlı session bulunur yani. config/session.php içinde expire_on_close ayarı var. Onu false yaparsanız tarayıcı kapandığında lifetime değerine göre oturum açık kalır çünkü cookie verilen süre sonra tarayıcı tarafından silinir. Eğer expire_on_close ayarını true yaparsanız cookie lifetime 0 olarak belirlenir, yani tarayıcı kapanırken cookie'yi direkt siler.

        Siz Livewire kullanıyorsunuz, session kullanıyorsanız session verilerine hem PHP hem de JS tarafından ulaşabilirsiniz demektir ama localStorage kullanırsanız sadece JS ile ona ulaşabilirsiniz; PHP ile ulaşmak isterseniz JS ile bunu sunucuya iletmek zorunda kalırsınız.

        İşiniz sadece tarayıcı tarafında ise localStorage uygun ama PHP tarafında da bu veriye direkt erişmek istiyorsanız session uygun.

          mgsmus

          Teşekkürler hocam. Dediğiniz gibi isteklerin yapısına göre deneme yapacağım.