Per il WEBPIZZA
Mi stavo chiedendo se era possibile mettere un RELOAD della pagina del forum all'inserimento di un nuovo messaggio....un semplice IF new mex { RELOAD
}
altrimenti mi tocca fare un aggiorna continuamente..
grazie per l'attenzione
Saluti teo
Non ho parole per te.
Conosci tutto ma veramente tutto.
Ma chi sei????
Mi stavo chiedendo se era possibile mettere un RELOAD della pagina del forum all'inserimento di un nuovo messaggio....un semplice IF new mex { RELOAD
}
altrimenti mi tocca fare un aggiorna continuamente..
grazie per l'attenzione
------------/QUOTE---------------
Quello che tu chiedi ha un senso dal punto di vista dell'utente ma crea dei alcuni svantaggi dal punto di vista del server che ospita www.pizza.it.
Intanto cominciamo col dire che non è tra capacità dei linguaggi per Active Server Pages quella di dare informazioni in tempo reale lato client (ossia lato del vostro PC). Per far capire anche gli altri utenti di questo forum posso dire che:
1) è vero che il forum si aggiorna in tempo reale in base ai messaggi che vengono inseriti
2) la pagina del vostro internet explorer non è direttamente collegata (secondo per secondo) al forum perchè il collegamento vero e proprio avviene solo aggiornandola. Non esiste un filo diretto, esiste solo una vostra chiamata verso il server (non viceversa).
Alla luce di questi impedimenti tecnici, per fare quello che chiedi, si possono trovare delle scappatoie piu' o meno comode. Una è quella di forzare l'autocaricamento della prima pagina del forum ogni TOT secondi ma questo indipendentemente dal fatto che siano stati pubblicati nuovi messaggi.
E' come avere una porta automatica che si apre ogni 10 secondi senza che ci sia per forza una persona che deve entrare. Tutto ciò risolverebbe il problema che tu hai posto ma al prezzo di dover caricare il server di www.pizza.it di "enne" richieste forzate e non necessarie aumentando a dismisura il traffico pur rimanendo invariato il numero di utenti.
In sostanza non abbiamo poteri diretti sui vostri PC se non qualche forzatura attraverso Javascript e HTML. Non c'è un reale scambio di informazioni tra www.pizza.it e voi a meno che non siate voi a cliccare sul pulsante "aggiorna" o a digitare l'indirizzo del forum.
In pratica siete voi che chiedete informazioni al sito e non viceversa. Non è possibile fare un javascript come quello che hai proposto tu perchè l'essenza di ASP è quella di lavorare esclusivamente sul sito e mai sul PC di casa.
Ripeto, ci sono delle vie alternative per aggirare gli ostacoli ma è un gioco che non vale la candela.
si infatti la mia idea era quella di intrecciare asp con il database di pizza.it oppure usare dei cookie......ma se dici che crea un caricamento al server...
ma un piccolo meta tag magari allungando i tempi... potrebbe non caricare troppo il server..... 300 secondi che dici bastano
ad evitare un aggiornamento continuo da parte di tutti ...
ed evitare un caricamento del server..
Saluti Teo
mi sono reso adesso conto di ver inserito i tag e quindi l'elaboratore ha mangiato il codice.....inverto l'ultimo tag cosi' puoi vedere il meta tag che potrebbe inserirsi..
<meta http-equiv="Refresh"; content="60"; <
saluti Teo
meta http-equiv="Refresh"; content="60"
Saluti Teo
meta http-equiv="Refresh"; content="60"
--------/QUOTE----------
Esatto, questo codice HTML serve per aggiornare automaticamente l'home page del forum ogni 60 secondi ma converrai con me che non è esattamente la cosa che chiedevi tu nel primo messaggio.
"IF new_message THEN...... eccetera"
60 secondi per ogni refresh rappresentano un carico di lavoro non pesante per il server, quindi la pagina può essere impostata con quell'intervallo ma non vedo la grossa convenienza rispetto al click sul pulsante aggiorna.
Dalla richiesta pensavo che auspicassi un refresh quasi immediato mentre 60 secondi sono un'eternità di fronte ad un monitor!
visto che il reload attraverso il database non era conveniente farlo allora come ultima soluzione (poco pratica) un aggiornamanento ogni 300 secondi..... utile nel caso si utilizzano altre finestre del browser contemporaneamente a quelle del sito di pizza.it....... comunque era molto utile uno script lato server che attuasse un aggiornamento solo nel caso ci fosse stato l'inserimento di un nuovo messaggio e in questo modo il server sarebbe stato caricato anche meno..... altra cosa utile focalizzare il forum solo su una finestra anche perchè molti (me compreso) hanno una risoluzione 800*600 ed ogni volta devono far scorrere la barra del frame di destra per leggere il messaggio.....certo è facile farlo manualmente digitando : https://www.pizza.it/forum/pizza/ ma molti non lo sanno !!
Saluti Teo
comunque era molto utile uno script lato server che attuasse un aggiornamento solo nel caso ci fosse stato l'inserimento di un nuovo messaggio e in questo modo il server sarebbe stato caricato anche meno
-----------QUOTE-----------------
Beh sì, sarebbe stato utile ma con la tecnologia di questo forum e di questo sito è fisicamente impossibile.
In ambiente ASP non può esistere uno script lato server che, al variare di un database, contatti le pagine lato client comunicando loro in tempo reale le modifiche. E' sempre e solo il lato client a chiamare il server (alla cieca).
Essendo queste chiamate sostanzialmente cieche, per ottenere dei risultati immediati occorrerebbe che il vostro PC chiamasse il forum ogni secondo! Tutto ciò è assolutamente improponibile.
Mi riferivo a questo quando parlavo di carichi di lavoro troppo pesanti.
TRADUZIONE PER I MENO ESPERTI CHE SEGUONO QUESTA DISCUSSIONE: è sempre il vostro internet explorer a chiamare www.pizza.it e MAI viceversa. E' un limite strutturare delle pagine ASP.
Non è che io non voglia mettere lo script in questione, è che proprio non esiste, non nel modo in cui è stato descritto qui sopra. Non posso, in assenza di vostri input, intercettare la modifica al forum e richiamare automaticamente tutti gli internet explorer collegati al sito.
Certe cose si fanno, per esempio, in JAVA laddove esiste un filo diretto tra server e PC (basti pensare ad alcune chat). Molti ignorano questi dettagli ma quando si tratta di JAVA e di trasmissioni dati in tempo reale vuol dire che esiste un sito (magari quello della vostra chat preferita) che può tranquillamente agire all'interno del vostro computer con il vostro pieno assenso. Non è per per farvi preoccupare, ma solo per spiegare perchè alcune tecnologie si sviluppino piu' di altre. Non è un caso che le elaborazioni JAVA, volendo, si possano disabilitare nelle opzioni di internet explorer. Del resto tutti i programmi "invasivi" possono essere utilizzati anche per fare danni.
Ci sono pro e contro in tutti i tipi di sviluppo di programmi per il web. JAVA (ed altri linguaggi) danno piu' poteri ai gestori dei siti ma il livello di sicurezza a livello utente si abbassa di molto.
Torniamo a noi. Come abbiamo già detto esiste solo un refresh automatico su secondi preimpostati ma questo è solo un modo elegante per aggirare il problema, non è esattamente ciò che hai chiesto tu ma gli si avvicina. E' un metodo impreciso anche se apparentemente efficace.
Volendo lavorare di codice unendo javascript lato client, vbscript lato server e qualche proprieta' di ASP si può ottenere un risultato ancor piu' preciso del refresh automatico, non mi dilungherò sulla spiegazione tecnica ma i risultati sarebbe abbastanza buoni. Il problema è che il vantaggio è talmente irrisorio da non giustificare tanto sforzo a livello di codice e di chiamate al server, credimi.
Nel caso in cui gli utenti navighino come hai descritto, tenendo aperte 2 finestre di cui una sul forum, il refresh può avere un suo significato e direi che 60 secondi o al limite 120 possono essere un intervallo giusto.
Probabilmente sarà inserito.
-----------------
altra cosa utile focalizzare il forum solo su una finestra anche perchè molti (me compreso) hanno una risoluzione 800*600
-----------QUOTE----------
Il sito nuovo è pensato a 800x600 quindi il problema sarà risolto automaticamente.
Per quanto riguarda l'apertura della nuova finestra rivolgiti direttamente ad Umberto perchè le pagine vecchie le cura fisicamente lui con FrontPage, io sto lavorando sulle nuove e non posso intervenire.
Un consiglio per gli utenti che visualizzano male il forum per via della risuluzione bassa:
Basta cliccare sul link del forum tenendo premuto il tasto shift e questo si aprirà in una "nuova finestra".
In alternativa basta cliccare col tasto destro sullo stesso link e scegliere l'opzione "apri in una nuova finestra".