Esempio Online Anteprima(sola lettura)
Descrizione: Modifica dati prima della visualizzazione
Sorgente PHP: examples/events/result.php
Sorgente XML: examples/events/result.xml

La propagazione degli eventi è legata alle richieste HTML e AJAX eseguite. Tutte le richieste vengono gestite dalla variabile di post:

  • data ($_POST["data"]) Variabile dedicata per indicare il tipo di azione da eseguire
  • dsobjname ($_POST["dsobjname"]) Variabile dedicata per indicare l'oggetto ds da utilizzare
  • dswhere ($_POST["dswhere"]) Variabile dedicata per impostare un filtro su tutti i ds
  • ds1where ($_POST["ds1where"]) Variabile dedicata per impostare un filtro esclusivo per il ds chiamato "ds1" (per un ds chiamato "prova" la variabile sarà "provawhere")

Per eseguire le varie operazioni si utilizza nei post la variabile "data", in base al suo valore verrà eseguita una certa operazione:

data dsobjname Tipo Richiesta Operazione Dati restituiti
Non settatoNon settatoPOST/HTMLCarica la pagine HTML priva dei dati dei datasourceHTML(Codice)
loadallNon settatoPOST/AJAXEsegue la selezione di tutti i datasource dichiaratiXML(Javascript + Dati DS)
login Settato POST/AJAX Esegue l'autenticazione di sistema tramite il datasource XML(Javascript + Dati DS)
changepasswd Settato POST/AJAXEffettua il cambio della password per il sistema di autenticazioneXML(Javascript + Dati DS)
loadNon settatoPOST/AJAX Esegue la selezione di tutti i datatasource dichiarati XML(Javascript + Dati DS)
load Settato POST/AJAX Esegue la selezione del ds specificato XML(Javascript + Dati DS)
newNon settatoPOST/AJAX Esegue il salvataggio dei dati per il ds specificato XML(Javascript + Dati DS)
update Settato POST/AJAXEsegue l'update dei dati per il ds specificatoXML(Javascript + Dati DS)
deleteNon settatoPOST/AJAX Esegue l'eliminazione dei dati per il ds specificato XML(Javascript + Dati DS)
deleteallNon settatoPOST/AJAX Esegue lo svuotamento di tutta la tabella per il ds specificato XML(Javascript + Dati DS)
storeNon settatoPOST/AJAX Esegue la storizzazione dei dati per il ds specificato XML(Javascript)
rewriteSettatoPOST/AJAX Riscrive il codice html di un ogetto della pagina HTML(Codice + Javascript)

CARICAMENTO DELLA PAGINA
Il caricamento della pagina avviene in due fasi: html e dati.
Per prima cosa viene generato il codice HTML della pagina priva dei dati dei ds. Il codice HTML viene generato una sola volta. Se nelle proprietà dell'oggetto page è settata la proprietà "loadall" a "true" viene scaturita, alla visualizzazione della pagina, la richiesta AJAX per la selezione di tutti i datasource (data=loadall).

CARICAMENTO DELLA PAGINA SENZA DATASOURCE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 non settato html_before_load(); - - - - Inizio.
02 non settato html_load(); - SI - - Gli oggetti della pagina sono istanziati e si possono modificare le proprietà.
03 non settato html_after_load(); - SI SI - Il codice HTML è già stato restituito al browser.

CARICAMENTO DELLA PAGINA CON DATASOURCE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 non settato html_before_load(); - - - - Inizio.
02 non settato html_load(); - SI - - Gli oggetti della pagina sono istanziati e si possono modificare le proprietà.
03 non settato html_after_load(); - SI SI - Il codice HTML è già stato restituito al browser.
04 loadall data_before(); - - - - Inizio richiesta data.
05 loadall data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
06 loadall data_before_loadall(); - - - - Inizio selezione di tutti i datasource.
07 loadall data_loadall(); - - - SI Viene eseguito prima del caricamento degli oggetti. E' possibile annullare il caricamento degli oggetti dal sorgente xml.
08 loadall data_after_loadall(); - SI - - Se non annullato dall'evento precedente viene generato al termine del caricamento degli oggetti.
09 loadall data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
10 loadall data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta.

AUTENTICAZIONE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 login data_before(); - - - - Inizio richiesta data.
02 login data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 login data_before_login(); - - - - Inizio procedura di autenticazione.
04 login data_login(); Oggetto DS SI - SI Viene eseguito prima della verifica delle credenzialità. E' possibile annulla la procedura di autenticazione.
05 login data_after_login(); Oggetto DS SI - - Se non annullato dall'evento precedente viene generato in caso credenziali valide.
06 login data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 login data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta.

CAMBIO PASSWORD DI AUTENTICAZIONE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 changepasswd data_before(); - - - - Inizio richiesta data
02 changepasswd data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 changepasswd data_before_changepasswd(); - - - - Inizio procedura di cambio password.
04 changepasswd data_changepasswd(); Oggetto DS SI - SI Viene eseguito prima della cambio password. E' possibile annullare la procedura di cambio password.
05 changepasswd data_after_changepasswd(); numero righe modificate SI - - Se non annullato dall'evento precedente viene generato dopo il cambio della password.
06 changepasswd data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestista sia l'ultima.
07 changepasswd data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta.

CARICAMENTO DATASOURCE
E' possibile, specificando la variabile di post "dsobjname", quale oggetto ds caricare, altrimenti saranno caricati tutti i ds presenti nel codice XML.

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 load data_before(); - - - - Inizio richiesta data.
02 load data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 load data_before_lload(); - - - - Inizio procedura di caricamento del datasource.
04 load data_load(); - - - SI Viene eseguito prima del caricamento degli oggetti ds dal sorgente XML. E' possibile annulla la procedura caricamento degli oggetti.
05 load data_after_load(); - SI - - Se non annullato dall'evento precedente viene generato dopo il caricamento degli oggetti.
06 load data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 load data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta

INSERIMENTO DEI DATI IN UN DATASOURCE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 new data_before(); - - - - Inizio.
02 new data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 new data_before_new(); - - - - Inizio procedura di inserimento dei dati.
04 new data_new(); Oggetto DS SI - SI Viene eseguito prima della procedura di inserimento dei dati. E' possibile annulla la procedura di inserimento.
05 new data_after_new(); Oggetto DS SI - - Se non annullato dall'evento precedente viene generato dopo l'inserimento dei dati.
06 new data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 new data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta.

MODIFICA DEI DATI DI UN DATASOURCE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 update data_before(); - - - - Inizio.
02 update data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 update data_before_update(); - - - - Inizio procedura modifica dei dati.
04 update data_update(); Oggetto DS SI - SI Viene eseguito prima della procedura di modifica dei dati. E' possibile annulla la procedura di modifica.
05 update data_after_update(); Oggetto DS SI - - Se non annullato dall'evento precedente viene generato dopo la modifica dei dati.
06 update data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 update data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta

ELIMINAZIONE DEI DATI DA UN DATASOURCE

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 delete data_before(); - - - - Inizio.
02 delete data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 delete data_before_delete(); - - - - Inizio procedura di eliminazione dei dati
04 delete data_delete(); Oggetto DS SI - SI Viene eseguito prima della procedura di eliminazione dei dati. E' possibile annulla la procedura di eliminazione.
05 delete data_after_delete(); Oggetto DS SI - - Se non annullato dall'evento precedente viene generato dopo l'eliminazione dei dati.
06 delete data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 delete data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta

ELIMINAZIONE DI TUTTI I DATI DI UN DATASOURCE(Tabella)

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 deleteall data_before(); - - - - Inizio.
02 deleteall data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 deleteall data_before_deleteall(); - - - - Inizio procedura di eliminazione dei dati.
04 deleteall data_deleteall(); Oggetto DS SI - SI Viene eseguito prima della procedura di eliminazione dei dati. E' possibile annulla la procedura di eliminazione.
05 deleteall data_after_deleteall(); Oggetto DS SI - - Se non annullato dall'evento precedente viene generato dopo l'eliminazione dei dati.
06 deleteall data_last_multirequest(); - SI - - Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima.
07 deleteall data_after(); - SI - - Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta.

STORIZZAZIONE DEI DATI

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 store data_before(); - - - - Inizio.
02 store data(); - - - SI E' possibile annullare l'eseguzione di tutti gli eventi successivi.
03 store data_before_store(); - - - - Inizio procedura di storizzazione dei dati.
04 store data_store(); - - - SI Viene eseguito prima della procedura di storizzazione dei dati. E' possibile annulla la procedura di storizzazione.
05 store data_after_store(); - - - - Se non annullato dall'evento precedente viene generato dopo la storizzazione dei dati.

REWRITE DI UN OGGETTO DELLA PAGINA

OrdinedataEventoParametriOggetti IstanziatiCodice GeneratoAnnullabileDESCRIZIONE
01 rewrite html_before_rewrite(); ID Oggetto - - - Inizio.
02 rewrite html_rewrite(); - SI - - L'oggetto è istanziato e si possono modificare le proprietà.
03 non settato html_after_rewrite; - SI SI - Il codice HTML è già stato restituito al browser.