Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα σε όλους και Καλή Χρονιά,

 

έχω φτιάξει μια php εφαρμογή (δεν μας ενδιάφερει τι κάνει), όπου κάθε χρήστης έχει username και password για να μπει και να την χρησιμοποιήσει.

 

Εγώ αυτό που θέλω είναι με κάποιο τρόπο (αυτό ψάχνω), όταν ο χρήστης χάσει την σύνδεσή του στο Internet στο καπάκι, να εκτελείται μια σελίδα php στον server.

 

Ουσιαστικά, να triggarei μια σελίδα για να κάνει ότι χρειάζεται.

 

Ιδέες;;;;; Προτάσεις;;;;;

Δημοσ.

Στον πίνακα με τους users θα μπορούσες να βάλεις ένα πεδίο last_action. Αυτό το πεδίο θα πρεπεί να ανανεώνεται μέσω κλίσεων ajax (πχ κάθε 30sec μέσω μιας javascript loopas) ένα script ανανέωσης. Τώρα μέσω ενός cron τρέχει ένα php script το οποίο να ελέγχει (τους loged users πάντα) ποιοι users δεν έκαναν ανανέωση του last_action. Πράγμα που σημαίνει πως δεν εκτελέστηκε το script ανανέωση που σημαίνει ότι είναι πιθανόν να οφείλετε ότι κόπηκε το ιντερνετ.

Δημοσ.

Το θέμα είναι ότι θέλω με το που χαθεί η σύνδεση.

Με το που πάω και βγάλω το δίκτυο να εκτελείται μια σελίδα στον server όπου θα κάνει αυτό που πρέπει να κάνει.

Δημοσ.

Από την στιγμή που είσαι εκτός internet o client δεν μπορεί από όσο ξέρω μπορεί με κάποιο τρόπο να μιλήσει με τον server (Σύνδεση client - server).  Άρα η μόνη φαινομενικά λογική λύση είναι αυτός ο έλεγχος να γίνετε από τον server.   

Δημοσ.

Αυτό που θέλεις γενικά δεν γίνεται και αν χρειάζεται 101% να το κάνεις τότε μια web page δεν είναι ο κατάλληλος τρόπος υλοποίησης της εφαρμογής που θέλεις.

 

Υπάρχουν 2 σενάρια που μπορώ να σκεφτώ με τα οποία κάπως κούτσα κούτσα θα μπορούσε ίσως να υλοποιηθεί έτσι όπως το θέτεις, αλλά είναι το ένα χειρότερο από το άλλο. Σε περίπτωση που δε θέλεις να ακολουθήσεις το φυσιολογικό μονοπάτι (δηλαδή αυτό που θέλεις να το κάνεις αλλιώς), ορίστε τα σενάρια και κρίνε μόνος σου αν είναι ρεαλιστικά. Υπόψιν ότι για κάθε ένα από αυτά θα μπορούσα να γράψω μια σελίδα με προβλήματα που ίσως ή σίγουρα θα αντιμετωπίσεις, απλά δε μπαίνω στον κόπο.

  1. Όλη η εφαρμογή σε μία σελίδα (δηλαδή ποτέ page reload, όλα 100% με AJAX) και έχεις στο background ένα AJAX request στον server που δεν τελειώνει ποτέ. By definition τότε ξέρεις πως όταν τελειώσει εκείνο το server process ο χρήστης έχει αποσυνδεθεί. Βέβαια αν ο χρήστης πατήσει F5 τότε πακέτο.
  2. Ένας WebWorker (για να είναι persisting across page reloads) που έχει WebSocket connection στον server με την ίδια λογική όπως πριν. Εδώ δεν έχεις το πρόβλημα του F5 και δε χρειάζεται να ξαναγράψεις την εφαρμογή από την αρχή, αλλά η υποστήριξη σε επίπεδο browser είναι γενικά από κακή έως ανύπαρκτη.
Δημοσ.

Ευχαριστώ για τις απαντήσεις.

 

Είχα σκεφτεί το εξής:

ο κάθε χρήστης να γράφει κάθε Χ χρόνο ένα αρχείο στο δίσκο ότι εγώ είμαι alive.

Ο server να ελέγχει πότε ενημερώθηκε το συγκεκριμένο αρχείο για τον συγκεκριμένο χρήστη και ανάλογα να πράξει. Βέβαια εδώ θα έχω καθυστέρηση από 1 sec μέχρι και X.

 

Άσε που θα πρέπει να τρέχει συνέχεια μια php και δεν μου αρέσει αυτό.

 

Αυτή την στιγμή η εφαρμογή παίζει με WebSocket σε συνεργασία PHP - JS - Flash και εκεί προσπαθώ να το ενσωματώσω αλλά δεν βρίσκω άκρη.

 

Ρώτησα να δω τι άλλες εναλλακτικές υπάρχουν αλλά από ότι βλέπω και από ότι έψαξα δεν υπάρχουν αξιόλογες λύσεις.

 

Γενικά, με τι τρόπο θα μπορούσα να κάνω αυτό για μια web εφαρμογή.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...