Avatar billede benneharli Juniormester
01. september 2005 - 16:52 Der er 3 kommentarer og
1 løsning

Problemer med IIS og PHP

Jeg har et problem med at få cookie til at virke med PHP 5 installeret på en IIS 5.

Dette script virker:

<?PHP
setcookie ("test", "test" , time()+60*60, "/" );
?>

--- cookiecheck.php code ---

<?PHP
if(isset($_COOKIE[test]))
{
  echo ("ja");
}else
{
  echo("nej");
}
?>


Dette script virker ikke:

<?php
if(isset($_GET["set"])) {
setcookie("test", "Det_virker", 0, "/");
header("Location:". $_SERVER["PHP_SELF"]);
exit();
}

if(isset($_COOKIE["test"])) {
echo $_COOKIE["test"];
}else{
echo"<a href='". $_SERVER["PHP_SELF"] ."?set=true'>Sæt cookie</a>";
}
?>

Hvordan kan det være???

Det virker fint på den server hvor jeg har mit webhotel...
Avatar billede benneharli Juniormester
01. september 2005 - 16:57 #1
Hvis jeg udkommenterer:
header("Location:". $_SERVER["PHP_SELF"]);
- og så sætter det ind igen, så bliver cookien sat rigtigt.... så det må jo være noget med at header funktion ikke rigtigt virker efter setcookie i IIS. Kan der gøres noget der???
Avatar billede benneharli Juniormester
01. september 2005 - 16:59 #2
Fandt lige det her... Det ser jo ikke så lovende ud :-( Det SKAL være IIS...
Avatar billede benneharli Juniormester
01. september 2005 - 16:59 #3
Alchaemist
15-Mar-2005 12:36
setcookie + header Location + IIS 5 = Trouble

It took me a long time to figure out what was causing a missing cookie in one system while it worked perfectly in another...

See this one: http://support.microsoft.com/kb/q176113/

In short, this WILL NEVER WORK IN IIS 5:
<?php
header("Pragma: no-cache");
header('Location: http://www.example.com/');
setcookie('AA','1',0,'/');
setcookie('BB','2',time() + 24 * 3600,'/');
?>

You will ONLY get the Location Header, everything else will be "cut out" by IIS 5 CGI implementation.

Solutions:
1- Migrate to Apache/IIS6/Whatever
2- Use a Non Parsed Header Script (nph-*.php)
3- Try with header('Refresh: 0; $URL');

I hope this helps somebody not to spend hours knocking his/her head.

Alchaemist
Avatar billede benneharli Juniormester
06. september 2005 - 09:32 #4
Har installeret Apache i stedet... Det kan åbenbart ikke lade sig give sig med IIS5
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