kostenloser Webspace werbefrei: lima-city


Probleme mit Cookies und Headern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    h******s

    Hier erstmal meine index.php
    <?php
    error_reporting(E_ALL);
    include "./includes/configuration.inc.php";
    
    if(!$mod || ($mod == "")) $mod = "home";
    if(!$skin || ($skin == "")) 
     {
      $skincookie = $_COOKIE["skin"];
      if(!$skincookie || ($skincookie == ""))
        {
         $skin = "default";
    	}
      else
        {
         $skinselected = $skincookie;
    	}
    }
    
    if($mod)
      {
       $pathmod = "./mod/$mod.php";
       if(isset($skinselected) && ($skinselected != ""))
         {
          $pathskin = "./skins/$skinselected/style.css";
    	 }
       else
         {
    	  $pathskin = "./skins/$skin/style.css";
         }	 
            
       if(file_exists($pathskin))
        {
    	 setcookie("skin","$skin",time()+(3600*24*365));
    	}
       else 
        {
    	 setcookie("skin","default",time()+(3600*24*365));
    	 $skin = "default";
    	}
             
       if(!file_exists($pathmod))
        {
    	 $mod = ucfirst($mod);
         include "mod/fehler.php";
        } 
       else 
        {
    	 $mod = ucfirst($mod);	
         include "mod/$mod.php";
        } 
      }
    ?>


    Nun zu meinem Problem:
    Wird die seite das erste mal ohne irgendwelche paramerter aufgerufen, wird kein Cookie gesetzt.
    Ich bekomme die Fehlermeldung:

    Warning: Cannot modify header information - headers already sent by (output started at C:\HTTPD\www\www\cms\index.php:5) in C:\HTTPD\www\www\cms\index.php on line 33

    Wenn ich dann einen Skin auswähle, wird dieser über ?skin=skinname an die index.php übergeben.
    Das klappt auch, ein Cookie wird gesetzt. Die ganze Page arbeitet nun mit dem neuen skin.
    Will ich nun jedoch einen neuen Skin auswählen, passiert garnichts.
    Weder wird das cookie überschrieben, noch bekomme ich eine Fehlermeldung, und die seite hat den alten skin.

    Gleichzeitig habe ich mein CMS unter http://hateress.lima-city.de hochgeladen.
    Doch wenn ich diese URL aufrufe, wird garnichts angezeigt.
    Auf meinem lokalen Apache läuft es jedoch ohne probleme.

    Weiss jemand einen Rat?

    Beitrag zuletzt geändert: 1.11.2010 16:27:53 von hateress
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Header sollten immer vor allen anderen Dingen (include, usw...) gesetzt werden, also direkt nach <?php

    Bevor du den Header setzt oder Cookies schreibst/liest/etc. sagst du:

    error_reporting(E_ALL);

    Ist un eine Variable beispielsweise nicht korrekt deklariert (isset, empty, etc...), gibt es nicht unbedingt Fehler, aber eine Warnung d.h. einen Output. Ist ein Output erfolgt, kann kein Header mehr gesendet und/oder verarbeitet werden.

    Beitrag zuletzt geändert: 5.11.2010 13:42:28 von fabo
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!