Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    49

    Popup quando cambia un dato nel DB

    Salve a tutti, ho l'esigenza di far apparire una popup che avvisi l'utente che si collega a una pagina php quando cambia un dato in una tabella del database (in mysql).E' possibile fare questo senza eseguire l'autorefresh della pagina? Si può risolvere con Ajax?Grazie

  2. #2
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    588
    Un pò vago non ti sembra? i database sono sui server di solito e chi si connette può essere piu di una persona tramite indirizzi ip diversi.
    Si puo risolvere con Ajax tutto quello che si puo risolvere con Ajax senza fare refresh...ma quello che chiedi tu non credo proprio.
    L'utente che sta per correggere un dato che è visualizzato sul suo monitor, deve eseguire un lock per avere l'accesso esclusivo per il tempo della correzione e poi rilasciare il lock al record modificato. Questo è gestire i dati su database mentre la richiesta che fai è fuori di senso.
    ciao
    Vic53

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Quote Originariamente inviata da diamond Visualizza il messaggio
    E' possibile fare questo senza eseguire l'autorefresh della pagina? Si può risolvere con Ajax?
    Sì, è sufficiente fare più chiamate AJAX temporizzate per determinare quando il dato è cambiato rispetto al valore iniziale, ovviamente programmando lato server qualcosa che indichi, tramite un valore specifico o una data/ora, un qualsivoglia riferimento utile a determinare l'avvenuto cambiamento.

    Mi sembra comunque una soluzione evitabile e inefficiente se si scala verso l'alto: è proprio necessaria? qual è l'obiettivo preciso?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Forse può esserti utile nodejs essendo un framework sia client che server, ma come dice alka cosa dovresti fare?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,521
    Ciao,
    Puoi fare in diversi modi, alcuni dei quali già suggeriti come ad esempio fare chiamate multiple tramite Ajax, ma questo mette un sovraccarico sul server, in quanto le chiamate sono brevi e frequenti ed ogni volta si inviano anche tutte le intestazioni, ma sino a una decina di anni fa era l'unica soluzione oltre all'auto-refresh della pagina (terribile).
    Un altra soluzione è usare il long polling, in questo caso la connessione viene stabilita e rimane aperta "per un po" in attesa di eventuale risposta e poi si chiude e si riapre subito dopo e ricomincia, le intestazioni vengono inviate comunque ma le chiamate sono decisamente meno.
    Infine c'è un metodo molto più moderno che riguarda le WebSocket, in questo caso la connessione è bilaterale e continua, in questo modo una volta aperta la connessione rimane in attesa e sia il server che il client possono inviarsi messaggi in qualsiasi momento.
    Chiaramente dipende anche da quali client vuoi supportare, possiamo dire che in base alla "modernità" del metodo che scegli i client supportati possono essere da i più vecchi ai più moderni.

  6. #6
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,521
    .

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.