torms Skrevet 16. august 2004 Del Skrevet 16. august 2004 Ok, jeg har en form. Bruker putter inn data og sender formen til "fil.php" "fil.php" prosesserer data Bruker får melding om dette gikk greit Hvordan kan jeg nå automatisk sende brukeren til ny side? -torms Lenke til kommentar
jorgis Skrevet 16. august 2004 Del Skrevet 16. august 2004 man kan bruke følgende kodesnutt, men kun hvis ikke scriptet har sendt ut data. Ergo kan man ikke bruke den etter man har gitt beskjed til brukeren. header("Location: densidenduvil.php"); Lenke til kommentar
Tha_Zaynt Skrevet 16. august 2004 Del Skrevet 16. august 2004 (endret) for sent ute Endret 16. august 2004 av Tha_Zaynt Lenke til kommentar
torms Skrevet 16. august 2004 Forfatter Del Skrevet 16. august 2004 Ja nettopp, jeg var ute etter noe som kan gjøre det etter at brukeren har fått beskjed. -torms Lenke til kommentar
jorgis Skrevet 16. august 2004 Del Skrevet 16. august 2004 Da kan du bruke HTML meta-tags, som du plasserer mellom <head> og </head>: <meta http-equiv="Refresh" content="3; url=http://domene.com/filendin.php"> Tre-tallet indikerer hvor mange sekunder det skal ta før brukeren blir videresendt. IKKE sett verdien til 0, siden brukeren ikke kan bruke tilbake-knappen da. Lenke til kommentar
torms Skrevet 16. august 2004 Forfatter Del Skrevet 16. august 2004 OK, jorgis. Må vel bruke HTML da hvis det ikke finnes noe i PHP. Takker uansett -torms Lenke til kommentar
BlueEAGLE Skrevet 16. august 2004 Del Skrevet 16. august 2004 OK, jorgis. Må vel bruke HTML da hvis det ikke finnes noe i PHP.Takker uansett -torms PHP er (fredeles) et server-side skriptspraak. Det vil si at PHP gjoer det PHP gjoer foer siden blir sendt til klienten. Etter siden har blitt sendt til klienten saa kan ikke PHP gjoere mer. Det er derfor du ikke kan sende tekst foerst og saa omdirigere med PHP. Naar teksten kommer til klienten saa er PHP ferdig. Lenke til kommentar
Ueland Skrevet 17. august 2004 Del Skrevet 17. august 2004 Så du mener at hvis vi bruker flush mitt i et php script så vil det slutte å fungere.. Lenke til kommentar
torms Skrevet 17. august 2004 Forfatter Del Skrevet 17. august 2004 Selv om det er et serversidespråk kan det vel legges inn funksjonalitet som gjør det jeg etterspør? Hva med å prosessere kode først, starte en timer, gi melding ut på skjerm, når angitt tid er ute så gå til URL. -torms Lenke til kommentar
Torbjørn Skrevet 17. august 2004 Del Skrevet 17. august 2004 "gå til url" gjøres før innhold sendes, per def, så nei, man kan ikke vise tekst og deretter gå til url vha php. sleng på en exit etter header-location. Lenke til kommentar
bjovas Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 Det som er sykt, er at det faktisk fungerer helt fint å gjøre dette, hvis man bruker firefox. if ( noe ) { gjør noe } else { echo "Vennligst vent i 0.02 sekunder. :)"; echo "<meta http-equiv=Refresh content=1; url=fil.php>"; } Så vil den redirecte som bare det. Men kun hvis man bruker firefox. Hvis man bruker Internet Exploder, så vil den nye siden bli stående å refreshe. Lenke til kommentar
Lemkin Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 (endret) Edit: Ble ikke helt som planlagt Endret 17. oktober 2004 av smoothie Lenke til kommentar
jorgis Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 Ghadafi: Det fungerer nettopp fordi det ikke har et fnugg med PHP å gjøre. Se hva jeg skrev tidligere i tråden. Anyhoo: Det var ingen vits å bumpe denne tråden såpass kraftig som du gjorde med et så meningsløst svar. *rapportert* Lenke til kommentar
???????? Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 man kan bruke følgende kodesnutt, men kun hvis ikke scriptet har sendt ut data. Ergo kan man ikke bruke den etter man har gitt beskjed til brukeren. header("Location: densidenduvil.php"); Gjør som jorgis sier. Det er ikke noe som sier at du ikke kan sende variable samtidig. if($variabel){ header("Location: densidenduvil.php?status=true"); }else{ header("Location: densidenduvil.php?status=true"); } densidenduvil.php if($_GET['status']){ echo "ok"; }else{ echo "Feil!"; } Lenke til kommentar
bjovas Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 (endret) Ghadafi: Det fungerer nettopp fordi det ikke har et fnugg med PHP å gjøre. Se hva jeg skrev tidligere i tråden. Anyhoo: Det var ingen vits å bumpe denne tråden såpass kraftig som du gjorde med et så meningsløst svar. *rapportert* Hva er det liksom for en tragisk holdning? Hvorfor hadde det vært bedre om jeg laget en ny topic? På vårt forum hadde du fått warn for å leke hobbymoderator... jaja. Og hvordan kan det jeg skriver ikke ha noe med php å gjøre? Ser du php og html som to helt forskjellige saker? Jeg ser det som to sider av samme sak, nemlig webapplikasjoner. Og i denne sammenhenger snakker vi om en webapplikasjon basert på lamp. Uansett, så har jeg prøvd med header("Location: index.php?"), helt øverst i output til siden, men det vil ikke redirecte skikkelig for meg da heller. :/ Edit: Hvis ikke ting plutselig har begynt å funke nå, uten at jeg egentlig har endre noe kode. Endret 17. oktober 2004 av Ghadafi Lenke til kommentar
RipZ- Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 Så du mener at hvis vi bruker flush mitt i et php script så vil det slutte å fungere.. Siden man redirecter ved å putte inn "Location" i meldingshodet, hjelper det lite å bruke flush. Meldingshodet blir sendt før innholdet, og det vil derfor være for sent å sende location-headeren i det man har begynt å outputte tekst. Lenke til kommentar
Torbjørn Skrevet 17. oktober 2004 Del Skrevet 17. oktober 2004 hvorfor flushe mitt i et skript? å sette headers etter at output har startet kan sammenlignes med å prøve å redigere en email etter at den er sendt og forvente at den skal endres i innboksen den er sendt til også. Lenke til kommentar
jorgis Skrevet 18. oktober 2004 Del Skrevet 18. oktober 2004 Og hvordan kan det jeg skriver ikke ha noe med php å gjøre? Ser du php og html som to helt forskjellige saker? Jeg ser det som to sider av samme sak, nemlig webapplikasjoner. Og i denne sammenhenger snakker vi om en webapplikasjon basert på lamp. Det du postet var ganske enkelt det jeg postet litt over (for to måneder siden) pakket inn i litt pseudokode. Den virksomme delen av din kodesnutt var faktisk HTML-biten, og da mener jeg det har fint lite med PHP å gjøre når koden bare dytter ut en HTML-snutt. Å anklage meg for å leke hobbymoddis er også svært lite saklig, spesielt siden jeg faktisk bare nevnte det i en bisetning på slutten, noe du blåste opp til et helt innlegg. Btw: Selv om det du postet bare fungerte i Firefox, fungerer det jeg postet i alle browsere som støtter meta refresh. Lenke til kommentar
christt Skrevet 18. oktober 2004 Del Skrevet 18. oktober 2004 Hvis du bruker output buffering så kan du hindre at ting blir sendt til browseren før helt på slutten av scriptet ditt, eventuelt ikke sendt i det hele tatt. Da kan du ha en header(Location: ...) midt inne i koden. Lenke til kommentar
bjovas Skrevet 18. oktober 2004 Del Skrevet 18. oktober 2004 (endret) Mm, fikk en liten aha-opplevelse på hvordan jeg skulle sette opp dynamisk include, rettet litt rekkefølge på parsingen. Så da funker redirect med header(). Men jeg får ikke til redirect med meta, av noen grunn. Den parsede teksten min blir ca: <html> <head> <meta http-equiv=Refresh content=1; url=fil.php> </head> <body> Redirecter, vent litt </body> </html> Da blir den bare stående å refreshe... Edit: Er det store cluet her at jeg må avgrense parametrene med " eller '? Slik? <meta http-equiv='Refresh' content='1; url=fil.php'> Edit2: Jøss, ser ut som det var hele greia... liten tue kan velte stort lass.... Endret 18. oktober 2004 av Ghadafi Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå