Nu er spørgsmålet så hvorfor den ikke skriver True i browseren når man bliver sendt videre til default.php? Browseren understøtter cookies og det er slået til. Jeg har prøvet at kigge i cookie biblioteket på maskinen og cookien bliver slet ikke skrevet. Men hvis jeg derimod fjerner den linie der hedder header(\"location.... osv så der kun er setcookie linien tilbage så skriver den fint cookien. Hvad poekker sker der lige her?
Der går rygter om at lige netop en IIS-server ikke kan klare både at sætte en cookie og lave en redirection i samme hug (men at Microsoft vistnok har et hack til netop PHP). Men prøv at lede efter sådan noget her på eksperten.
Og nej: siden bliver ikke redirected i det øjeblik du siger header(\"location: default.php\"); det sker først når hele siden er \"kørt\" færdig. Så rækkefølgen har ikke noget at sige hvad det angår.
Ahh...takker. Men det er sku da mildest talt noget lort. Hvad gør man så? Du vil da ikke bilde mig ind at man så ikke kan bruge PHP til noget der er relateret til cookies fordi det er en NT server? Det virker da underligt.
Ja, men det er jo også Microsoft. Jeg tror nok deres løsning havde noget at gøre med at få PHP til at køre med \"Non Parsable Headers\" (nph) - prøv også at lede efter det. Men som sagt - det er kun hvis du på samme side laver en redirect. I PHP kunne du måske overveje at lave en include i stedet for?
En include?? I hvilken sammenhæng skal den lige forståes?
Her er tale om et loginscript som gerne skulle sætte en cookie med div. værdier i, efter et accepteret login. Derefter skal man smides videre til hovedsiden, men stort set alle siderne benytter én eller flere værdier fra den cookie der bliver skrevet.
SetCookie(\"sbox\",\"true\",....); $sbox=\"true\"; // skal være tilgængelig på den inkluderede side - du kan ikke bruge $HTTP_COOKIE_VARS include(\'default.php\'); exit; // så kommer der ikke mere fra denne side
med lidt helt svarer dette til at redirecte til default.php - bortset fra det der står i adresselinien i browseren. Du skal nok undlade at komme med noget HTML før disse linier, da de vil forstyrre HTML-en i default.php
Dog virker den sidste metod eikke helt...jeg har i de fleste af mine scripts en mode variable som skal afhængig af hvad der skal ske på sidne og det går jo ikke helt at include side.php?mode=something
Med fornøjelse - men virker det? Og kan du bruge det? Det burde også gå lidt hurtigere for brugeren, for en redirect skal ud og \"vende\" på brugerens maskine, og lave endnu en forespørgsel. Om der er negative ting, skal jeg ikke lige kunne sige....
Nææ...det virker ikke...men det opdager du om 2 minutter når du får en mail fra eksperten :) Men du har alligevel svaret så pointene skal du nok få.... jeg skal bare have fundet en løsning :)
Ahh ja...doh! det tænke jeg ikke lige på...thansk :)) Det må være i ren irritation over at det ikke virker ordentligt med cookies...
Synes godt om
Ny brugerNybegynder
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.