Ankündigung

Einklappen
Keine Ankündigung bisher.

Nach Umstieg auf 1&1 werden Cookies nicht mehr gespeichert

Einklappen

Neue Werbung 2019

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

  • Nach Umstieg auf 1&1 werden Cookies nicht mehr gespeichert

    Hallo zusammen,
    nachdem ich nun schon seit einigen Stunden vergeblich nach dem Fehler suche, versuche ich es mal mit der Bitte um Hilfe in diesem Forum.

    Habe mir eine Webseite für Fußballwetten (nur Spielgeld!) gebastelt, die auf meinem Raspberry zu Hause wunderbar läuft.

    Nun habe ich diese auf einen Account bei 1und1 (www.privatewetten.com) kopiert, und dort klappt das setzen eines Cookies nicht. Daher kann man sich gar nicht einloggen. Vielleicht findet hier jemand eine Lösung. Sage schon jetzt danke für die Hilfe.

    Gruß Frank

    Hier der Codeabschnitt:
    PHP-Code:
    session_start();
    include(
    "config.php");

        if(
    $_POST["Username"])
        {
        
    $Username=$_POST["Username"];
        
    $Passmd5=md5($_POST["Passwort"]);
        
    setcookie("Username",$Username,time()+(3600*24*365));
        
    setcookie("Passmd5",$Passmd5,time()+(3600*24*365));
        }
        
     
        if (
    $_GET["action"] == "logout")
            {
            
    setcookie ("Username"$Usernametime() - 3600);
            
    setcookie ("Passmd5"$Passmd5time() - 3600);
            
    session_destroy();
    //        echo "Sie sind jetzt abgemeldet.";
            
    }

        
        if (
    $_SESSION['Username']) // Sessiondaten übernehmen wenn vorhanden
        
    {
        
    $Username=$_SESSION['Username'];
        }
        elseif(
    $_COOKIE['Username']) // Cookiedaten übernehmen wenn vorhanden
        
    {
        
    $Username=$_COOKIE['Username'];
        
    $Passmd5=$_COOKIE['Passmd5'];
    //    echo "Folgende Daten uebernommen: $Username, $Passmd5";
        



  • #2
    Bitte keine User-Daten ungefiltert übernehmen!
    Was sagt Dein ErrorReport:
    PHP-Code:
    error_reporting ( -);
    ini_set 'display_errors'true ); 
    bzw. welches Verhalten zeigt sich statt dem erwarteten?!
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Hallo,

      und Danke für die Rückmeldung.

      Der Cookie wird einfach nicht gespeichert. Oder wieder gelöscht. Auf jeden Fall ist der Wert Username nicht vorhanden wenn ich ihn in die Variable $Username einfügen möchte.

      Was mich am meisten verwirrt: Der gleiche Code läuft auf meinem Raspi problemlos.

      LG Frank

      Hier das Ergebnis des error_reporting
      Notice: Undefined index: App in /homepages/27/d546709808/htdocs/oben.php on line 20
      Notice: Undefined index: erster in /homepages/27/d546709808/htdocs/wettliste.php on line 9

      Notice: Undefined index: matchID in /homepages/27/d546709808/htdocs/wettliste.php on line 23

      Strict Standards: DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /homepages/27/d546709808/htdocs/wettliste.php on line 46

      Strict Standards: DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /homepages/27/d546709808/htdocs/wettliste.php on line 48

      Strict Standards: DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /homepages/27/d546709808/htdocs/wettliste.php on line 60

      Kommentar


      • #4
        Ach ja, der Username wird vor dem Abgleich mit der Datenbank noch esacped, das kommt nur nach dem Code den ich hier eingefügt hatte:

        PHP-Code:
        $UsernameSicher=mysql_real_escape_string($Username);
        $result mysql_query("SELECT * FROM user WHERE Username='$UsernameSicher'"); // Daten für Benutzername abfragen
        $menge mysql_num_rows($result); 

        Kommentar


        • #5
          Naja, sorge erstmal dafür, daß die Notices weg kommen.
          Das wäre mal der erste Schritt. Es fehlen ja reihenweise Indizes!
          Competence-Center -> Enjoy the Informatrix
          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

          Kommentar


          • #6
            Habe vor den entsprechenden Anfrage nun die isset Abfrage gesetzt. Nun sind die Nitices weg, aber das Problem ist das selbe.

            Kommentar


            • #7
              Dann debugge mal => var_dump()
              Fang bei Deinen Post-Vars an...
              Competence-Center -> Enjoy the Informatrix
              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

              Kommentar


              • #8
                Hier das Ergebnis (Passwort durch x ersetzt:
                array(2) { ["Username"]=> string(1) "1" ["Passwort"]=> string(x) "x" }

                Username lautet richtigerweise 1, auch das Passwort ist hier noch OK

                Kommentar


                • #9
                  Ja und nun immer Schritt für Schritt weiter, bis Dir etwas auffällt.
                  Das muß man Dir doch nicht aus der Nase ziehen...
                  Competence-Center -> Enjoy the Informatrix
                  PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                  Kommentar


                  • #10
                    Natürlich nicht, nur habe ich das alles schon versucht. Die Variablen werden ordentlich übergeben. Nur der Cookie wird nicht gesetzt. Habe das Problem jetzt so gelöst, dass die Angaben zum User in der $_SESSION Variable gespeichert wird. Das klappt auch.
                    Verstehe aber dennoch nicht, wieso der Cookie nicht gespeichert wird...

                    Kommentar


                    • #11
                      Im Jahr 2014 bitte nichtmehr mit md5 hashen... PHP hat mittlerweile ne eigene hash-Funktion. Siehe hash().
                      Und die mysql_-Erweiterung sollte man auch nicht mehr verwenden. -> mysqli_, Pdo
                      Current Projects: http://www.welten-buch.de, http://neu.zooadoo.de

                      Kommentar


                      • #12
                        Bis hier hin erst einmal Danke für die Hilfe. Das mit der Übergabe als SESSION Variable klappt ganz gut. Ist vielleicht sogar sicherer als Cookies? Wie erkennt PHP eigentlich den User für die Übergabe der SESSION Variable wieder, setzt das auch Cookies??

                        Ok, das google ich bei Gelegenheit mal...

                        Kommentar


                        • #13
                          Zitat von Geromel Beitrag anzeigen
                          Im Jahr 2014 bitte nichtmehr mit md5 hashen... PHP hat mittlerweile ne eigene hash-Funktion. Siehe hash().
                          Und die mysql_-Erweiterung sollte man auch nicht mehr verwenden. -> mysqli_, Pdo
                          Auch hier erst mal Danke. Hatte mir das mit der Umstellung auf mysqli schon länger vorgenommen. Und die hash Funktion hatte ich nicht auf dem Schirm, das nehme ich mir dann in den nächsten Tagen auch noch mal vor. Ist aber auch keine sicherheitsrelevante Sache, nur ein Fussballtippspiel/Wettspiel ohne echten Einsatz.

                          Kommentar

                          Lädt...
                          X