Problem mit Generierung der SessionID und Cookie

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

  • Problem mit Generierung der SessionID und Cookie

    Hi,

    Ich habe folgendes Problem:
    Ich habe 2 dateien, deren Aufgabe es ist einen Cookie mit der aktuellen SessionID zu setzten. Danach soll überprüft werden ob der Cookie gesetzt werden konnte und ob somit eine SessionID vorhanden ist.

    Folgende Datei versucht einen Cookie mit der SessionID zu setzten
    PHP-Code:
    <?


    if(!$sessionid)
     {
     session_start();
     $sess=session_id();
     if(setcookie ("sessionid", $sess, time() + 86400))
      {
      $ges=1;
      }
     else
      {
      $wlt=1;
      }
     }
    else
    {
    setcookie ("sessionid", $sessionid, time() + 86400);
    $ges=1;
    }

    if($ges==1)
    {
    print("<script language=\"javascript\">
    location.replace(\"WEITERLEITUNG ZUR ÜBERPRÜFUNGSDATEI\");
    </script>");
    }
    elseif($wlt==1)
    {
    print("<script language=\"javascript\">
    location.replace(\"DATEI MIT FEHLERMELDUNG COOKIE\");
    </script>");
    }


    ?>

    Die andere Datei überprüft ob der Cookie wirklich gesetzt wurde und leitet bei Bedarf auf die Fehlerseite um - außerdem wird in der Datenbank
    PHP-Code:
    <?

    $host="HOST";
    $user="USER";
    $passwort="PASSWORT";
    $tablename2="XXX";
    $tablename7="XXXX";
    $db="XXXXX";
    $link=mysql_connect($host, $user, $passwort);
    mysql_select_db($db, $link);


    if(!$sessionid)
    {
    $wlt=1;
    }
    else
     {
      $get="select SessionID from $tablename7 where SessionID='$sessionid'";
      $get=mysql_query($get);
      $get=mysql_fetch_array($get);
      if($get)
       {
       }
      else
       {
       $setid1="insert into $tablename2 (SessionID, News) values ('$sessionid', 1)";
       mysql_query($setid1);
       $setid2="insert into $tablename7 (SessionID) values ('$sessionid')";
       mysql_query($setid2);
       }
      $wlt=2;
     }

    mysql_close($link);

    if(mysql_errno())
    {
    echo mysql_error();
    $wlt='';
    }


    if($wlt==1) //falls Cookie nicht setzbar --> weiterleitung auf Fehlerseite
    {print("<script language=\"javascript\">
    location.replace(\"FEHLERSEITE\");
    </script>");}
    if($wlt==2) {print("<script language=\"javascript\">
    location.replace(\"WEITERLEITUNG\");
    </script>");}
    ?>

    Das Problem ist, dass die Dateien eigentlich ganz normal funktionieren bis auf in einigen Fällen - da kann kein Cookie gesetzt werden - welche Fälle das genau sind weiß ich noch nicht...
    Findet vielleicht jemand einen logischen Fehler im Code? micht treibt das ganz langsam zur Verzweifelung...

  • #2
    ganz schön komischer code, benutz mal $_COOKIE und wirf mal den überflüssigen code raus und mach mal Deinen code register_globals = off fähig...
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Vielleicht liegts daran, das manche Cookies gesperrt haben?

      byez - sagg
      mfg - sagg

      Kommentar


      • #4
        nein - ich hab das bei mir getestet und Cookies wurden immer alle akzeptiert

        Kommentar


        • #5
          Dann versuch's mal mit MelloPie's Vorschlag.
          mfg - sagg

          Kommentar


          • #6
            Re: Problem mit Generierung der SessionID und Cookie

            Original geschrieben von tschekowski
            Ich habe 2 dateien, deren Aufgabe es ist einen Cookie mit der aktuellen SessionID zu setzten.
            und warum lässt du PHP das nicht selber machen? ist doch im sesson-mechanismus schon alles implementiert ...

            wenn es bei dir "falsch" konfiguriert ist, so dass die session keine cookies nutzen möchte - dann stell's halt richtig ein. alle session-parameter sind PHP_INI_ALL änderbar ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar

            Lädt...
            X