Problem mit Cookies

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit Cookies

    Hallo zusammen,

    ich habe ein Problem beim ändern des Inhaltes eines Cookies.

    Als erstes wird (falls der Cookie leer ist) der Wert "de" als Standardsprache in den Cookie eingetragen.

    PHP-Code:
    if (empty($_COOKIE['language'])) {  $_COOKIE['language'] = "de";  } 
    danach werden, je nach Cookiewert, die entsprechenden Inhalte angezeigt.

    PHP-Code:
    if ($_COOKIE['language']=="de") {
    ... 
    some code ...
    } elseif (
    $_COOKIE['language']=="en") {
    ... 
    some other code ...

    Der Wert des Cookies soll über folgende Links geändert werden:

    PHP-Code:
    <a href="<?php echo $_SERVER['PHP_SELF']; ?>" onclick="javascript:void(document.cookie='language=de'); 
    location.reload();">deutsch</a>
     
    <a href="<?php echo $_SERVER['PHP_SELF']; ?>" onclick="javascript:void(document.cookie='language=en'); 
    location.reload();">englisch</a>
    Auf meinem lokalen Testserver und bei all-inkl funktioniert alles einwandfrei. Auf einer anderen Domain wird der
    Cookie zwar gesetzt, lässt sich aber nicht ändern.

    Habt Ihr eine Idee woran das liegen kann? Zumal es ja auf zwei anderen Servern klappt.

    greetz
    Frank

  • #2
    Re: Problem mit Cookies

    Original geschrieben von Frank79
    Auf meinem lokalen Testserver und bei all-inkl funktioniert alles einwandfrei. Auf einer anderen Domain wird der Cookie zwar gesetzt, lässt sich aber nicht ändern.
    In einem bestimmten Browser, oder allen?
    Online-Beispiele zum Vergleichen ...?


    Ggf. würde ich beim Setzen des Cookies über JS auch noch ein Verfallsdatum mit angeben, sowie Domain und Path.
    (googlen, wenn nicht bekannt wie ...)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: Re: Problem mit Cookies

      Original geschrieben von wahsaga
      In einem bestimmten Browser, oder allen?
      In verschiedenen Browsern unter verschiedenen OS´s (IE6, Opera, Netscape 7.1, Firefox, Konqueror,...)

      Ggf. würde ich beim Setzen des Cookies über JS auch noch ein Verfallsdatum mit angeben, sowie Domain und Path.
      (googlen, wenn nicht bekannt wie ...)
      Verfallsdatum habe ich absichtlich weggelassen, da der Cookie ja nicht verfallen soll. Sprich wenn der Besucher das nächste mal kommt, soll die Spracheinstellung noch vorhanden sein (sofern der Cookie nicht gelöscht wurde).

      Kommentar


      • #4
        Re: Re: Re: Problem mit Cookies

        *verschieb*, da offenbar kein clientseitiges Problem.

        [Seitenadressen per mail bekommen.]

        In verschiedenen Browsern unter verschiedenen OS´s (IE6, Opera, Netscape 7.1, Firefox, Konqueror,...)
        Gut, die livehttpheaders-Extension im FF verrät mir auch, dass bei beiden Seiten der per JS geänderte Cookie wieder mitgeschickt wird.


        Außerdem verrät mit der Server der Domain, wo es "nicht funktioniert", dass du dort mit der ziemlich alten PHP-Version PHP/4.0.6 arbeitest - und was gab's in dieser Version noch nicht? Genau, die superglobalen Arrays wie bspw. $_COOKIE ...
        Also nutze dort $HTTP_COOKIE_VARS.
        (Wundere mich nur, dass du dabei keine Fehlermeldung bekommen hast - oder hast du das error_reporting dort etwa nicht scharf gestellt? Dann aber fix - ich möchte ja nicht auch bei zukünftigen Fehlern noch deine Aufgabe des Debuggings übernehmen müssen ...)
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Re: Re: Re: Re: Problem mit Cookies

          Original geschrieben von wahsaga
          ... Version PHP/4.0.6 arbeitest - und was gab's in dieser Version noch nicht? Genau, die superglobalen Arrays wie bspw. $_COOKIE ...
          Also nutze dort $HTTP_COOKIE_VARS.
          (Wundere mich nur, dass du dabei keine Fehlermeldung bekommen hast - oder hast du das error_reporting dort etwa nicht scharf gestellt? Dann aber fix - ich möchte ja nicht auch bei zukünftigen Fehlern noch deine Aufgabe des Debuggings übernehmen müssen ...)
          Nein, error_reporting habe ich nicht ausgeschaltet.
          Aber warum an der Stelle keine Fehlermeldung kommt wundert mich auch.

          Werde die Variablen ändern und schauen ob es dann funktioniert.

          1000Dank für deine Hilfe

          PS: livehttpheaders-Extension klingt gut. Werde ich mir bei gelegenheit mal anschauen

          Kommentar


          • #6
            Hallo wahsaga,

            habe alle Variablen geändert, und es funktioniert.

            Nochmal Danke für deine schnelle Hilfe.

            greetz
            Frank

            Kommentar

            Lädt...
            X