- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- Contenuto che si aggiorni senza refresh classico
-
Ciao,
Scusa il ritardo allora di come hai la cosa organizzata non ci ho capito molto, quindi ti faccio un esempio veloce dell'implementazione, che non dovresti avere problemi a comprendere, in caso chiedi ;).
miapagina.php
[php]
<html>
<head>
</head>
<body>
<!-- altro HTML -->
<div id="msg"></div>
<script>
function Chat()
{
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("Il tuo browser non supporta la chat!");
return false;
}
}
}
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
document.getElementById("msg").innerHTML=xmlHttp.responseText;
setTimeout('Chat()', 3000); //tempo di refresh generale
}
}
xmlHttp.open("GET","/aggiorna.php",true);
xmlHttp.send(null);
}
setTimeout('Chat()', 3000);
</script>
<!-- Altro HTML-->
</body>
</html>
[/php]Nel file aggiorna.php metti i messaggi da mostrare, ogni 3 secondi verrà fatta una richiesta ad aggiorna.php prenderà l'output e verrà sostituito al contenuto del nostro div.
Il funzionamento come puoi ben vedere è facile facile.
-
continua a non funzionare...quando premo invia mi mostra il contenuto dei messaggi due volte..:bho:
-
funziona...:)
alcuen volte però si blocca...sto usando un hosting gratuito altervista per provare...e dovuto a quello sicuramente che non regge le connessioni..cosa m consigli di prendere per non avere problemi di bloccaggio della chat..?Ovviamente su costi contenuti...
-
Purtroppo non credo ci sia soluzione con costi contenuti.
Quanta gente dovresti avere li collegata nei momenti di picco?
-
credo una 50 ina...
-
Mi sa che non funziona..ho appena provato con un amico..lui scriveva ma nulla..i suoi messaggi li ho letti solo dopo che ho scritto io..e pure avevo provato dal mio pc tenendo le pagine della chat aperte su due finestre differenti del browser..e funzionava!Cioè se scrivevo in una finestra automaticamente nell altra mi mostrava il messaggio...
Dove cavolo sbaglio..?
-
Ciao,
Dovresti postare le pagine, altrimenti non saprei il motivo.
-
Ho risolto..:)
-
Bene
Magari posta la soluzione per chi come te sta cercando di fare la stessa cosa.
-
nulla di che..il problema era il mio di come avvevo strutturato la minchat...
avevo sia il form che la lettura dei messaggi nella stessa pagina...e quando la funziona in javascript mi richiamava la pagina da visualizzare mi succedeva che mentre scrivevo nel form passati 3 secondi cancellava il tutto...aggiornvava praticamente...quindi ho la pagina con la script in ajax che sta per conto suo,poi ho creato la sola pagina per la lettura dei messaggi che sarebbe quella che viene richiamata dalla pagina che ha al suo interno lo script ajax..e il form sta su un altra pagina per conto suo..che includo solo per chi è loggato..