Avatar billede danic Nybegynder
13. april 2004 - 19:48 Der er 14 kommentarer og
1 løsning

Reload siden, men gem variabelen

Når jeg submitter en form køre jeg en reload af siden, således at man kan se opdateringen med det samme (form og database opdatering ligger i en og samme fil)

Her er min reload funktion:

function msgbox($msg) {
Print"<script language=\"JavaScript\">history.back(-1);</script>";
print "<div class=\"alertbox\">";
print $msg;
print "</div>";
} // end func

Problemet er bare at jeg aldrig ser:

print "<div class=\"alertbox\">";
print $msg;
print "</div>";

Hvad skal jeg gøre ????
Avatar billede roenving Novice
13. april 2004 - 20:00 #1
Hvorfor checker du ikke bare først i php-scriptet om det er en submit, laver din database-opdatering, hvis det er ...

-- og derefter uanset evt. opdatering udskriver formen (igen, hvis det er opdatering og inklusive din message !-)
Avatar billede danic Nybegynder
13. april 2004 - 20:07 #2
Jeg checker på submit

if(isset($_POST['send4']) && isset($_POST['childmenu'])) {   
    $sql = "database query";
    msgbox("beskeden"); // min funktion som ikke vil vise teksten
}
<formen>
<submit>
Avatar billede roenving Novice
13. april 2004 - 20:11 #3
Så skal du jo også fjerne javascript back-funktionen, for så er det jo en opdateret form, som kommer !o]

(den skrives iøvrigt enten history.back() eller history.go(-1) !-)
Avatar billede danic Nybegynder
13. april 2004 - 20:15 #4
Hvis jeg fjerner javascript back-funktionen, så bliver min side ikke reloaded.

f.eks. gemmer jeg et menupunkt i min dynamiske menu, dette menupunkt kan ikke ses før siden reloader, og hvis brugeren selv reloader siden kommer der 2 ens menupunkter.
Avatar billede roenving Novice
13. april 2004 - 20:26 #5
Hvad så med at sætte en link til opdatering i den div-boks !-)
Avatar billede danic Nybegynder
13. april 2004 - 20:31 #6
Kan du vise mig hvordan koden skal se ud ?
Avatar billede roenving Novice
13. april 2004 - 20:56 #7
function msgbox($msg) {
print "<div class=\"alertbox\">";
print $msg;
print "<a href='#' onclick='location.reload(true);'>Se din opdatering</a></div>";
} // end func
Avatar billede danic Nybegynder
13. april 2004 - 21:02 #8
Kan href='#' sættes til self? så jeg ikke skal ligge url ind for alle sider?
Avatar billede roenving Novice
13. april 2004 - 21:21 #9
Det klarer .reload, så det behøver du ikke bekymre dig om ...
Avatar billede danic Nybegynder
13. april 2004 - 21:29 #10
Jeg tror jeg laver en form knap

function msgbox($msg) {
print "<div class=\"alertbox\">";
print $msg;
?>
<FORM>
    <INPUT TYPE="BUTTON" VALUE="Reload"
      onClick="history.go(-1)">
</FORM>
<?
print "</div>";
} // end func

eller kan man lave en timer som reloader efter 3 sek ? uden at bruge <META HTTP-EQUIV="Refresh" Content="3; ?
Avatar billede roenving Novice
13. april 2004 - 21:35 #11
ja, f.eks. er dette en funktion, som reloader efter 3 sekunder:

setTimeout('location.reload(true)',3000);

-- eller:

setTimeout('history.go(-1)',3000);
Avatar billede danic Nybegynder
13. april 2004 - 21:41 #12
Ok så har jeg da 2 mulighedder :)

og det er vel ikke muligt at gemme min <div> og vise den efter den automatiske reload?
Avatar billede danic Nybegynder
13. april 2004 - 22:59 #13
roenving> du må godt komme med et svar så jeg kan lukke denne her :-)
Avatar billede roenving Novice
13. april 2004 - 23:06 #14
Virker det ?-)

-- så velbekomme '-)
Avatar billede danic Nybegynder
13. april 2004 - 23:17 #15
Ja det virker, men desvære ikke så man kan print $msg; efter min reload.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging