Salve ragazzi volevo sapere in che modo possa aggiornare la pagina (al 90% scritta in PHP) in modo che se un utente manda un msg lo possa leggere subito senza fare l'aggiornamento del browser (es F5),per il momento ho risolto con il tag
codice:
<META HTTP-EQUIV=REFRESH CONTENT="300">
però non mi piace perchè se uno sta scrivendo in quel momento si aggiorna la
però non mi piace perchè se uno sta scrivendo in quel momento si aggiorna la pagina e perde quello che ha scritto... vi posto una parte dello script finale (dove si scrive il commento)
Codice PHP:
<?php
// inizio script per i commenti
$commenti = "public/commenti/".$commento."commenti.txt";
if(file_exists("$commenti")){
include("$commenti");
}else{
$frase1 = "<table width=100% height=100% border=1 cellspacing=1 cellpadding=1>";
$frase2 = $frase1."<tr><td bgcolor=#FF9900></td></tr>";
$frase = $frase2."<tr><td bgcolor=#666666>Non c'è nessun commento</td></tr></table>
";
echo "$frase";
}
?>
<table border="0" align="center">
<form action="" method="post">
<tr><td>Nick:</td>
<td> <input name="nick" /></td>
</tr>
<tr>
<td>Commento</td>
<td><textarea name="chat" rows="12" cols="70" ></textarea>
</td></tr>
<tr>
<td colspan="2"><div align="center"><input type="submit" name="invia" value="invia" />
<input type="reset" name="reset" value="cancella" /></div></td>
</tr>
</form></table>
<?php
$nick = $_POST["nick"];
$chat = $_POST["chat"];
if (($nick != NULL) AND ($chat != NULL)){
$commento_x = "public/commenti/".$commento."commenti.txt";
$commento_y = "public/commenti/".$commento."msg.txt";
if (file_exists("$commento_x")){ // verifica se il file commenti.txt esiste
$filed = @fopen("$commento_y","r"); // se esiste apre il file msg
$count = @fread($filed, 100); // lo legge e lo assegna a una variabile
$countplus = ($count + 1); // lo incrementa
@fclose($filed); // lo chiude
$fileb = @fopen("$commento_y","w"); // lo riapre in scrittura
@fwrite($fileb, $countplus, 100); // lo scrive aggiornato
@fclose($fileb); // lo chiude
$file = @fopen("$commento_x","a"); // se esiste lo apre il file commenti.txt
$frase1 = "<table width=100% height=100% border=1 cellspacing=1 cellpadding=1>";
$frase2 = $frase1."<tr><td bgcolor=#FF9900>[".date("d/m/Y - G:i:s")." - ".$_POST['nick']." - post n° ".$countplus."]</td></tr>";
$frase = $frase2."<tr><td bgcolor=#666666>".$_POST['chat']."</td></tr></table>
";
@fwrite($file, $frase);
@fclose($file); // lo chiude
}else{
// il file non esiste, lo creo
$filed = @fopen("$commento_y","w"); // lo crea da 0
$num = 1;
@fwrite($filed, $num); //gli scrive
@fclose($filed); // lo chiude
$f = @fopen("$commento_x","a"); // lo crea da 0
$frase1 = "<table width=100% height=100% border=1 cellspacing=1 cellpadding=1>";
$frase2 = $frase1."<tr><td bgcolor=#FF9900>[".date("d/m/Y - G:i:s")." - ".$_POST['nick']." - post n° ".$num."]</td></tr>";
$frase = $frase2."<tr><td bgcolor=#666666>".$_POST['chat']."</td></tr></table>
";
@fwrite($f, $frase); //gli scrive
@fclose($f); // lo chiude
}
}
?>
è solo un pezzo perchè lo script è lungo, cmq funziona ma se voglio leggere un msg appena creato (anche da me) devo aggiornare il browser, chiedo c'è un sistema che se una persona scrive un commento si aggiorna automaticamente la pagina?
p.s.: la pagina viene aperta da variabili... tipo .../recensioni.php?recen=10
un grazie a chi mi aiuta!!!