2012-06-14 16 views
6

में कोई पृष्ठ छोड़ता है, तो यह फ़ंक्शन है जिसे उपयोगकर्ता किसी विशेष पृष्ठ को छोड़ने पर निष्पादित करना चाहता हूं। यह फ़ंक्शन मूल रूप से मेरे डेटाबेस में किसी निश्चित कॉलम के भीतर सभी डेटा को बदल देगा। तो यदि उपयोगकर्ता इस पृष्ठ को छोड़ देता है, तो मैं इस समारोह को सिस्टम द्वारा निष्पादित करना चाहता हूं। क्या यह पता लगाने का कोई तरीका है कि उपयोगकर्ता ने पहले से ही पृष्ठ छोड़ा है या नहीं।यह पता लगाने के लिए कि कोई उपयोगकर्ता PHP

धन्यवाद!

+1

लंबी कहानी छोटी: कोई विश्वसनीय तरीका नहीं है। कुछ जावास्क्रिप्ट घटनाएं हैं जो अनलोड को संभालती हैं, लेकिन उनकी गारंटी नहीं दी जा सकती है। – xbonez

+0

http://stackoverflow.com/questions/1889404/jquery-ui-dialog-onbeforeunload –

+0

[जावास्क्रिप्ट, ब्राउज़र, विंडो बंद करने का संभावित डुप्लिकेट - एक AJAX अनुरोध भेजें या विंडो बंद करने पर एक स्क्रिप्ट चलाएं] (http: // stackoverflow .com/प्रश्न/6162188/जावास्क्रिप्ट ब्राउज़र खिड़की-बंद भेज-एक-ajax अनुरोध या चलाने के एक स्क्रिप्ट-ऑन-जीत) –

उत्तर

1

आप PHP का उपयोग करके ऐसा नहीं कर सकते क्योंकि यह सर्वर-साइड भाषा है। आपको जावास्क्रिप्ट का उपयोग करने की आवश्यकता होगी।

5

100% विश्वसनीयता के साथ, नहीं, यह संभव नहीं है। चूंकि कोई विशेष पृष्ठ छोड़ना क्लाइंट-साइड ऑपरेशन है, इसलिए आपके पास ग्राहक के नियंत्रण पर 0 नियंत्रण है। आप जावास्क्रिप्ट के माध्यम से onbeforeunload हैंडलर पंजीकृत कर सकते हैं और उम्मीद करते हैं कि क्लाइंट ब्राउज़र इसका समर्थन करता है। लेकिन फिर, इसके लिए समर्थन सार्वभौमिक नहीं है।

1

आप php में यह कर सकते हैं नहीं है, लेकिन आप इस्तेमाल कर सकते हैं जावास्क्रिप्ट समारोह onbeforeunload, यहाँ एक example

<script type="text/javascript"> 
    window.onbeforeunload = confirmExit; 
    function confirmExit() 
    { 
    return "You have attempted to leave this page. If you have made any changes to the fields without clicking the Save button, your changes will be lost. Are you sure you want to exit this page?"; 
    } 
</script> 
1

के बाद से सर्वर साइड php केवल सर्वर स्क्रिप्ट चलाता है और फिर ब्राउज़र आप के लिए परिणाम भेजता है अकेले PHP के साथ ऐसा नहीं कर सकता। आप जावास्क्रिप्ट का उपयोग करते हुए ऑन-लोड ईवेंट के साथ अपने php स्क्रिप्ट को AJAX अनुरोध भेज सकते हैं, और फिर उस अनुरोध के जवाब में php स्क्रिप्ट चला सकते हैं।

संबंधित मुद्दे