Sind Cookies aktiv?

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

  • Sind Cookies aktiv?

    Hallo,

    kann ich denn irgendwie mit PHP püfen, ob der Browser eines Benutzers Cookies akzeptiert oder nicht?

    Grüße,
    Andi

  • #2
    du kannst auf der nächsten Seite überprüfen, ob er auch gesetzte ist.
    Falls nicht, dann liegst u 99% daran, dass der BEnutzer sie nicht aktzeptiert.
    Für Rechtschreibfehler übernehme ich keine Haftung!

    Kommentar


    • #3
      Nun, ich möchte ja beim Aufruf einer Seite prüfen ob der Browser Cookies überhaupt annimmt, wenn nicht, dann soll was anderes gemacht werden.

      Grüße, Andi

      Kommentar


      • #4
        PHP-Code:
        if(isset($_GET['reload']) && isset($_COOKIE['name']))
          {
            
        //mach was, wenn Cookie da ist
          
        }
        elseif(isset(
        $_GET['reload']) && !isset($_COOKIE['name']))
         {
            
        //oder wenn er nicht da ist

          
        }
        else
         {
            
        set_cookie();
            
        header("location:".$_SERVER['PHP_SELF']."?reload=1")
         } 
        ist auch innerhalb einer Seite
        anderes wird es nicht gehen, soweit ich weiss
        Für Rechtschreibfehler übernehme ich keine Haftung!

        Kommentar


        • #5
          naja es sei denn java ist aktiviert dann dürfte es damit gehen, aber das ist ein anderes thema.

          aber soweit ich weiß kann man nicht mit php auf die browser einstellungen zugriff und ich HOFFE das wird immer so sein!!

          Kommentar


          • #6
            Danke der gloreichen PHP Hilfe habe ich gesehen das PHP das ganze schon für uns erledigt


            $HTTP_COOKIE;

            Hier die Ausgabe:
            CookieTest=Dieses_Cookie_ueberprueft_ob_Ihr_Browser_Cookies_annimmt; sprache=deutsch

            oder hab ich das was falsch verstanden?

            Kommentar


            • #7
              Hmmmm,

              des mit dem erneuten Laden der Seite möchte ich eigentlich vermeiden.

              Hat jemand Erfahrung ob das Cookie schon beim Serverseitigen Interpretieren des PHP-Codes an den Browser geschickt wird oder erst beim Senden der kompletten Daten?

              Ansonsten hätte ich mit folgendes überlegt:

              <?

              setcookie("mycookie", "test");
              if ($mycookie){
              // cookie ist aktiv
              } else {
              // kein cookie gesetzt
              }


              ?>

              Kommentar


              • #8
                Original geschrieben von praetorian
                $HTTP_COOKIE;
                Hier die Ausgabe:
                CookieTest=Dieses_Cookie_ueberprueft_ob_Ihr_Browser_Cookies_annimmt; sprache=deutsch
                oder hab ich das was falsch verstanden?
                Laut Online-Handbuch gebe ich mit $HTTP_COOKIE nur ein gesetztes Cookie aus. Wenn ich also ein Cookie mit setcookie("meincookie", "123") gesetzt habe, erhalte ich auf der Folgeseite mit "print $HTTP_COOKIE["meincookie"]" als Ausgabe 123.

                Ist in der php.ini REGITER_GLOBALS auf "on" gestellt, kann ich mir $HTTP_COOKIE sparen und einfach "print $meincookie" benutzen.

                Kommentar


                • #9
                  @andik2000
                  http://de2.php.net/set_cookie

                  Häufige Probleme:


                  Cookies werden nicht sichtbar, bevor nicht eine Seite geladen wird, in der das Cookie sichtbar sein soll. Um zu testen, ob ein Cookie erfolgreich gesetzt wurde, prüfen Sie noch vor der Ablaufzeit auf einer weiteren Seite ob das Cookie vorhanden ist. Die Ablaufzeit wird mittels dem Parameter expire gesetzt. Eine nette Möglichkeit um die Existenz von Cookies zu prüfen, ist print_r($_COOKIE); aufzurufen.

                  @preatorian:

                  Ich glaube schon.
                  Für Rechtschreibfehler übernehme ich keine Haftung!

                  Kommentar


                  • #10
                    Original geschrieben von andik2000
                    Hmmmm, des mit dem erneuten Laden der Seite möchte ich eigentlich vermeiden.
                    geht aber nicht.

                    bei der auslieferung der seite wird der response-header mitgesendet, der dem browser sagt das du ein cookie setzen möchtest.

                    beim der nächsten anforderung an den server sendet dann der browser das cookie im request-header wieder mit (sofern er's akzeptiert hat), und erst dann kannst du mit php darauf zugreifen.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      So hab ichs fast geahnt. Dann lasse ich mir was Anderes einfallen.

                      Dank & Grüße,
                      Andi

                      Kommentar

                      Lädt...
                      X