Vad ska jag skriva för att "reload"?

Trädvy Permalänk
Medlem
Plats
65 14
Registrerad
Dec 2001

Vad ska jag skriva för att "reload"?

Hej

Jag har detta

Koden är

<form id="form1" name="form1" method="post"> Ditt namn: <input type="text" /> Din kommentar <textarea name="comment" rows="2"></textarea> <input type="submit" name="Submit value="Skicka" /> </form>

<?php if(isset($_POST['Submit'])) { $name = $_POST['name']; $comment = $_POST['comment']; $today = date("F j, Y, H:i"); $myFile = "comments.html"; $fh = fopen($myFile, 'a') or die("can't open file"); $stringData = "<b>$name</b>: $today <br /> $comment <br /> <hr />\n"; fwrite($fh, $stringData); fclose($fh); } ?>

Under denna koden är det en Iframe för alla kommentarer. Men man måste alltid trycka på F5 eller gå in på sidan igen för att se kommentaren man precis skickat iväg. Finns det något sätt jag kan lösa det på?

Kan jag bädda in det i php koden eller form koden? Vore bättre än att skriva
"" Ser du inte din kommentar? Tryck på F5 ""

Tack

Samsung 34'' ultrawide curved
Logitech MX master & Logitech g910
Creative SoundBlaster Katana

Trädvy Permalänk
Medlem
Plats
Lund
Registrerad
Mar 2002

Du kan refresha en sida med php genom att köra:

header('location: index.php'); exit();

Sen hur du löser det eftersom det verkar ligga in en annan frame är en annan sak. Frames är en gammal teknik som du bör undvika hur som helst.

Du kan eventuellt behöva kika på output buffering (http://se2.php.net/manual/en/function.ob-start.php) ifall du lägger ovanstående kod efter någon "output" skickats till webbläsare.

"Knowledge amplification. What he learns, we all learn. What he knows, we all benefit from."

Trädvy Permalänk
Medlem
Plats
65 14
Registrerad
Dec 2001

Jo, jag vet
Men det är bara något lätt nu. men annars brukar jag köra med annat.

Hittade en lösning.
I comments.html skriver jag bara

<meta http-equiv="Refresh" content="5;url=comments.html">

Så syns det knapp Förstår inte varför jag inte kan söka före.. tog en liten stund sedan hittade jag det. Men tack ändå ^^

Samsung 34'' ultrawide curved
Logitech MX master & Logitech g910
Creative SoundBlaster Katana

Trädvy Permalänk
Medlem
Plats
Falun
Registrerad
Dec 2003
Citat:

Ursprungligen inskrivet av downup
Jo, jag vet
Men det är bara något lätt nu. men annars brukar jag köra med annat.

Hittade en lösning.
I comments.html skriver jag bara

<meta http-equiv="Refresh" content="5;url=comments.html">

Så syns det knapp Förstår inte varför jag inte kan söka före.. tog en liten stund sedan hittade jag det. Men tack ändå ^^

Utan att spy galla på din lösning... Men varför använder du iframe?

Det går att göra samma sak med en <div>. Att ladda om informationen i div:en utan att ladda om hela sidan kräver däremot Ajax.

ηλί, ηλί, λαμά σαβαχθανί!?

Trädvy Permalänk
Medlem
Registrerad
Jan 2005

Jag har samma fråga om Leedow har. Varför använder du en iframe? Om du inte har någon speciell anledning till att du använder en sådan skulle följande troligen fungera bättre:

form.php:

<!doctype html> <title>Hett dokument det går att skicka kommentarer till</title> <form action="submit.php" method="post"> [... ja du vet ...] </form> <?php skriv_ut_alla_kommentarer(); ?>

Och sedan en submit.php (eller vad som nu är ett lämpligt namn i detta fall):

spara_formulärdata_någonstans(); header('Location: http://example.com/form.php');