जब उपयोगकर्ता का सत्र टाइमआउट होता है तो मैं उपयोगकर्ताओं को लॉग आउट करने का प्रयास कर रहा हूं। उपयोगकर्ताओं को लॉग आउट करना - मेरे मामले में - डेटाबेस में उपयोगकर्ता की "ऑनलाइन" स्थिति को संशोधित करने की आवश्यकता है।
मैं सोच रहा था कि मैं कुछ ऐसा करने के लिए पर्यवेक्षक पैटर्न का उपयोग करने में सक्षम हो सकता हूं जो उपयोगकर्ता सत्र की स्थिति की निगरानी करेगा और सत्र समाप्त होने पर कॉलबैक ट्रिगर करेगा - जो उपयोगकर्ता के नाम को सुरक्षित रखेगा ताकि हम डीबी अपडेट कर सकें। मुझे बिल्कुल यकीन नहीं है कि सत्र की ओर कहां से शुरू किया जाए। क्या मैं सत्र के टाइमआउट में कॉलबैक बांध सकता हूं?php पर्यवेक्षक पैटर्न उपयोगकर्ता को लॉग आउट करने के लिए
क्या ये चीजें किसी भी उपलब्ध नाशपाती या ज़ेंड सत्र पैकेज में बनाई गई हैं? मैं ऐसा करने के लिए जो कुछ भी करना चाहता हूं उसका उपयोग करूंगा!
अद्यतन @ 16:33:
क्या होगा अगर आप एक प्रणाली है जहाँ उपयोगकर्ताओं को एक दूसरे के साथ बातचीत कर सकते हैं (लेकिन वे केवल ऑनलाइन उपयोगकर्ताओं के साथ बातचीत कर सकते हैं) है? उपयोगकर्ता को यह जानने की जरूरत है कि वर्तमान में कौन से अन्य उपयोगकर्ता ऑनलाइन हैं।
यदि हम बस यह देखने के लिए जांचते हैं कि प्रत्येक पृष्ठ पर सत्र अभी भी जीवित है या नहीं, तो टाइमआउट के बाद, उपयोगकर्ता को एक गैर-लॉग इन पेज पर भेजा जाता है, लेकिन वे अभी भी सिस्टम में ऑनलाइन सूचीबद्ध हैं।
यह विधि ठीक होगी, सिवाय इसके कि जब हम सत्र का समय निकालते हैं, तो हम उस उपयोगकर्ता के बारे में जानकारी खो देते हैं जिसका उपयोग उन्हें लॉग आउट करने के लिए किया जा सकता है।
अद्यतन @ 16: 56:
सही। धन्यवाद। मैं सहमत हूं ... बदसूरत की तरह। मेरे पास सर्वर की कुछ धीमी मतदान हो रही है, इसलिए उस विधि को लागू करना काफी आसान होगा। यह एक सत्र हैंडलिंग पैकेज के लिए ऐसी उपयोगी सुविधा की तरह लगता है। ज़ेंड और पीएआर दोनों में सत्र पैकेज हैं।
क्रॉन के बजाए, पृष्ठ के तर्क के ऊपर एक साधारण उपयोगकर्ता जांच करें (कुकी के लिए देखो, उपयोगकर्ता के डीबी रिकॉर्ड आदि पर 'last_visited' कॉलम देखें)। इसलिए यदि उपयोगकर्ता फिर से सक्रिय होने का निर्णय लेता है, तो आप उपयोगकर्ता की जानकारी और गतिविधि को सत्यापित कर सकते हैं, और फिर भी रीडायरेक्ट करने में सक्षम हो सकते हैं क्योंकि शीर्षलेख अभी तक नहीं भेजे गए थे। –