31 messaggi dal 28 giugno 2003
Che mi dite allora funziona?
Perchè io sono proprio a zero, ho fatto una chat in asp, ma l'ho adattata al mio sito da un articolo che c'è qui nel sito.
Ho un frame interno che carica la pagina con i messaggi, ma il solito problema del lampeggio/clik.
Posso chiedervi un esempio da scaricare ?
Anche perchè vedendo la ConquerChat ho visto che bisogna fare delle modifiche al global.asa che io stò usando anche per altre funzioni.
scusate l'ignoranza.

Grazie mitochi
38 messaggi dal 05 ottobre 2001
Ho letto spesso nei forum + o -
se non hai capito non devi dire di aver capito

è il mio caso:

non ho capito cosa devo fare col textarea (per provare li ho inseriti in tutte e 2 le pagine) e non mi si aggiorna la pagina, ma si ricarica (così come l'ho impostata io)

non ho capito l'uso di Replace(Application("messaggi"), vbcrlf, "\n")
a cosa serve \n?

non ho capito dove entra in gioco il tempo per la ricerca di nuovi messaggi
----------------------------------------------------
questo il codice delle 3 pagine di prova
prova dopo prova probabilmente ho peggiorato invece di andare avanti


--------------------------------
default.asp....................
<html>
<head>
</head>
<frameset COLS="50%,50%" framespacing="0" border="0" frameborder="0">
<FRAME MARGINHEIGHT=0 MARGINWIDTH=10 SRC="messaggi.asp" NAME="messaggi" NORESIZE FRAMEBORDER=no BORDER=1>
<FRAME MARGINHEIGHT=0 MARGINWIDTH=10 SRC="chat.asp" NAME="chat" NORESIZE FRAMEBORDER=no BORDER=1 SCROLLING=no>
<noframes>
<body BGCOLOR=BLACK >
<p>La pagina corrente utilizza i frame. Questa caratteristica non è supportata dal browser in uso.</p>
</body>
</noframes>
</frameset>
</html>
----------------------------------------
chat.asp ......................
<script language="Javascript">
function inviamsg(){
msg = document.forms[0].frase.value

// da qui comincia il loro script
script = document.createElement('script');
var head = document.getElementsByTagName('head').item(0);
script.src = "messaggi.asp?msg=" + escape(msg)
script.type = 'text/javascript';
script.defer = true;
script.id = 'lastLoadedCmds';
void(head.appendChild(script));
}
</script>
<script LANGUAGE="Javascript">
function switch_frase(){
document.form_invio.frase.value = document.form_invio.prefrase.value;
document.form_invio.prefrase.value = "";
document.form_invio.prefrase.focus();
inviamsg()
}//azzero il contenuto del textbox dopo l'invio
</script>


<form NAME="form_invio" TARGET="messaggi" ACTION="messaggi.asp" METHOD="GET" onSubmit="switch_frase()">
<input TYPE="HIDDEN" NAME="frase">
<input TYPE="TEXT" NAME="prefrase" SIZE="50">
<input alt="Invia - Send" src="img/go.gif" type="image">
<BR>
</form>


<form NAME="form_msg">
<textarea rows="30" cols="20" name="form_area_msg" value="document.form_msg[0].AreaMsg.value">
Non ho capito come usarla</textarea>
</form>
--------------------------------------------------------
messaggi.asp...................
<%
Dim msg
msg = Request.QueryString("msg")
Application("messaggi") = Application("messaggi") & vbcrlf & msg
'Application("messaggi") = ""
%>
<%=Replace(Application("messaggi"), vbcrlf, "\n")%>

<script LANGUAGE="Javascript">
document.form_msg[0].AreaMsg.value = "<%=Replace(Application("messaggi"), vbcrlf, "\n")%>"
</script>
<form NAME="form_msg">
<textarea rows="30" cols="20" name="form_area_msg" value="document.form_msg[0].AreaMsg.value">
</textarea>
</form>
-----------------------------------------------------------
11.886 messaggi dal 09 febbraio 2002
Contributi
ma scusa, segui fedelmente quell'esempio.


non ho capito l'uso di Replace(Application("messaggi"), vbcrlf, "\n")
a cosa serve \n?


non ha importanza per ora, vedi solo se funziona.


non ho capito dove entra in gioco il tempo per la ricerca di nuovi messaggi

in quella versione di esempio non c'è. I nuovi messaggi vengono visualizzati solo se tu ne invii uno.
Il punto non è costruire una chat, ma riuscire a non far ricaricare la pagina


Enjoy learning and just keep making
11.886 messaggi dal 09 febbraio 2002
Contributi
Facciamola più semplice (il metodo funziona):
anzichè leggere i messaggi dalla application leggiamo l'ora del server.
Solite 2 pagine:

index.asp
<form>
<textarea id="testo" name="testo" value="" rows="10"></textarea><br>
<input type="button" value="leggi l'ora" onClick="Javascript:inviamsg()"> 
</form>


<script language="Javascript"> 
function inviamsg(){ 

// da qui comincia il loro script 
script = document.createElement('script'); 
var head = document.getElementsByTagName('head').item(0); 
script.src = "messaggi.asp"
script.type = 'text/javascript'; 
script.defer = true; 
script.id = 'lastLoadedCmds'; 
void(head.appendChild(script)); 
} 
</script> 


messaggi.asp
<%
Response.Expires = 0
Response.AddHeader "pragma","no-cache"
Response.AddHeader "cache-control", "private" 
Response.CacheControl = "no-cache"
%>
document.forms[0].testo.value += "<%=Now()%>\n"


il \n in una stringa javascript serve solo per andare a capo .
Apri index.asp e clicca il bottone: leggerai l'ora del server senza il click della pagina che si ricarica

Enjoy learning and just keep making
38 messaggi dal 05 ottobre 2001
Grazie ancora BrightSoul

Alla pagina http://www.foligno.it/chattamo/
ci sono i primi risultati, estremamente POSITIVI

Mi stavo chiedendo come aggiornare la pagina senza una textarea, infatti è limitativo non poter formattare il testo, non poter usare gif ecc.

Tornando alla chat a cui abbiamo fatto riferimento,
speravo che potesse funzionare qualcosa di analogo a:
<div class=messages><script LANGUAGE="Javascript">document.write (document.forms[0].testo.value)</script></div>
ma forse non è così semplice... puoi darmi qualche spunto per continuare il lavoro?
11.886 messaggi dal 09 febbraio 2002
Contributi
ok, benone.
A questo punto si, puoi sostituire la textarea con una <div> in cui potrai mettere del testo formattato.
La linea da cambiare è solo una: fare riferimento a una div è leggermente differente da una textarea.

Per prima cosa dai un nome alla tua div, così
<div id="miachat"></div>

adesso sostituisci questa linea (messaggi.asp)
document.forms[0].testo.value += "<%=Now()%>\n"
con quest'altra
document.getElementById("miachat").innerHTML += "<%=Now()%><br>"


Enjoy learning and just keep making
31 messaggi dal 28 giugno 2003
Sei un boss,
adesso bisognerà sostituire l'orario con il messaggio che invio dalla pagina index.asp, immagino !
Grazie cmq fino ad ora!
11.886 messaggi dal 09 febbraio 2002
Contributi

grazie, ma quel codice non era mio... anzi il primo consiglio che avevo dato ad annASPando era stato "rinunciaci".

e il merito è suo che ha trovato quella chat

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.