IRRupt Skrevet 31. august 2004 Del Skrevet 31. august 2004 (endret) Jeg vet hva i prinsippet "Header already sent" betyr for noe. Men jeg lurer på om siden må struktureres på spesiell måte for å unngå problemet? Siden min består av index.php hvor jeg inkluderer banner, meny, innhold osv. Og da jeg vil at mine passord beskyttet sider skal bli inkludert i "innhold div'n", men som sagt så får jeg bare denne feilmeldingen. Noen som har noen tips, eller kan peke meg i riktig retning? Edit: Skriveleif Endret 1. september 2004 av IRRupt Lenke til kommentar
Zethyr Skrevet 31. august 2004 Del Skrevet 31. august 2004 (endret) Litt kode kan jo hjelpe, men jeg tror feilene kanskje kan ligge i at du har for mye kode i fila du inkluderer. I include skal du bare ha koden som ligger mellom <body> & </body> taggene, altså ikke <head> elns.. Det høres ut som om at den prøver å sende metainformasjon to ganger, (tenker da på doctype, mimetype, xml lang, meta tagger, pluss annet snadder) Endret 31. august 2004 av Zethyr Lenke til kommentar
Blib Skrevet 31. august 2004 Del Skrevet 31. august 2004 Bruker du kanskje sessions? Du må i så fall skriv "session_start" som den absolutt øverste linja i dokumentet ditt, med unntakk av DocType, som jo egentlig ikke er en del av dokumentet, på en måte. Jeg har iallefall fått den erroren de gangene jeg har glemt det Lenke til kommentar
Atpn Skrevet 31. august 2004 Del Skrevet 31. august 2004 (endret) altså, hvis man får "header already sendt" så tyder det på at noe som skal ligge først ikke gjør det. Ting som session må komme FØR du sender ut noen form for html. Edit: det betyr derimot ikke at det må være på første linje. Tror jeg iallfall... Endret 31. august 2004 av Atpn Lenke til kommentar
IRRupt Skrevet 31. august 2004 Forfatter Del Skrevet 31. august 2004 Det høres ut som om at den prøver å sende metainformasjon to ganger, (tenker da på doctype, mimetype, xml lang, meta tagger, pluss annet snadder) Det var det jeg tenkte først, men det er altså ikke Bruker du kanskje sessions? Du må i så fall skriv "session_start" som den absolutt øverste linja i dokumentet ditt, med unntakk av DocType, som jo egentlig ikke er en del av dokumentet, på en måte. Jeg har iallefall fått den erroren de gangene jeg har glemt det Skal jeg ha "session_start" øverst i index.php også? Har kun brukt det passordbeskyttede siden så langt. Lenke til kommentar
Blib Skrevet 31. august 2004 Del Skrevet 31. august 2004 På alle sider hvor du skal bruke sessions må den session-start-saken ligge i toppen av det dokumentet. Dersom du ikke inkluderer noe logginn-php som bruker sessions i index.php skal du ikke ta med sessions øverst der. Lenke til kommentar
Lemkin Skrevet 31. august 2004 Del Skrevet 31. august 2004 Du kan bruke ob buffering. Da kan du velge selv når alt skal bli sendt ut osv Kan være en løsning om du feks bruker mye header("location: blalba"); Lenke til kommentar
IRRupt Skrevet 31. august 2004 Forfatter Del Skrevet 31. august 2004 Du kan bruke ob buffering. Da kan du velge selv når alt skal bli sendt ut osv Kan være en løsning om du feks bruker mye header("location: blalba"); Det har jeg lest om. Men vil ikke siden ta lengre tid å laste dersom jeg bruker ob buffering? Lenke til kommentar
Lemkin Skrevet 31. august 2004 Del Skrevet 31. august 2004 Nei, når siden lastes er php alt ferdig med sin del. Med ob buffering så legger den alt som går i en buffer, før det sendes til browseren. Dette gjør slik at du selv kan tømme, slette og starte den på nytt, alt etter hva du vil skal vises på siden Lenke til kommentar
IRRupt Skrevet 31. august 2004 Forfatter Del Skrevet 31. august 2004 Nei, når siden lastes er php alt ferdig med sin del. Med ob buffering så legger den alt som går i en buffer, før det sendes til browseren. Dette gjør slik at du selv kan tømme, slette og starte den på nytt, alt etter hva du vil skal vises på siden Ok da skal jeg gjøre et forsøk Lenke til kommentar
IRRupt Skrevet 31. august 2004 Forfatter Del Skrevet 31. august 2004 Ok da funker innloggingen sånn noenlunde. Hvis jeg skriver full URL til en passordbeskyttet side så funker det, men menyen min funker ikke. I det jeg skal kalle opp .../index.php?side=gallery så funker det rett og slett ikke. Jeg havner tilbake på index.php. Noen som aner grunnen til det? Lenke til kommentar
IRRupt Skrevet 31. august 2004 Forfatter Del Skrevet 31. august 2004 Det er koden nedenfor benytter i div'n som jeg vil skal endre innhold: <?PHPif($side == "index") { include("index.php"); } else if($side == "") { include("layout/news.php"); } Er det noen som kan hjelpe en stakkars? Lenke til kommentar
torms Skrevet 1. september 2004 Del Skrevet 1. september 2004 Fra manualen: /* verify the validity of GET var page if not set, do a default case */ if(isset($HTTP_GET_VARS['page'])) { $p = $HTTP_GET_VARS['page']; } else { $p = 'index'; } switch($p) { case 'index': require('welcome.php'); break; case 'news': require('news.php'); break; case 'what you want': require('the file you want'); break; default: exit('Wrong parameter for file inclusion'); } ?> En elegant måte å gjøre det på synes jeg. -torms Lenke til kommentar
Lemkin Skrevet 1. september 2004 Del Skrevet 1. september 2004 Om du ikke har definert $side som $_GET['side'] eller du ikke har på register_globals så vil ikke scripetet virke. switch ($_GET['side']) {case 'nyheter': include './nyheter.php';break;/* ny case for hver side */default: include './index.php'; // eller whatever}[code] burde gjøre susen PS: utestet 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å