Ankündigung

Einklappen
Keine Ankündigung bisher.

Frage zu SID

Einklappen

Neue Werbung 2019

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

  • Frage zu SID

    Hallo

    wenn ich die Session mit <? echo "".SID.""; ?> an einen Link hänge klappt alles wenn Cookies akzeptiert werden. Dann kann ich die Session mit $PHPSESSID auslesen. Wenn ich keine Cookies akzeptier wird zwar die Session angehängt aber ich kann Sie nicht in der Datenbank abspeichern

    $sqlbefehl = "insert into visitor (id,sess,zeit,titel,aktiv,session) Values ('','$IP','$zeit','$titel','','$PHPSESSID')";

  • #2
    oh, ja das kenne ich!
    Das Problem liegt daran, dass du einen Tippfehler in Zeile 54 machst, guck mal da nach!

    Kommentar


    • #3
      woher weist Du was ich in Zeile 54 stehen habe? Kann keinen nFehler finden

      Kommentar


      • #4
        Mannnnn!
        Das war ironisch und heißt soviel wie:
        Woher zum Geier soll irgendwer wissen, was Du verbockt hast, wenn Du nicht mal Deinen Code rausrückst damit ihn sich mal wer ansehen kann?
        Wenn Dir schon selbst so ein Lichtlein aufgeht, dass Jojo nix von Deinem Code wissen kann, warum reicht das Hirnschmalz dann nicht auch soweit, dass Du uns mal was zeigst?
        **********************************
        Nein, ich bin nicht die Signatur.
        Ich putze hier nur.
        **********************************

        Kommentar


        • #5
          Das war mir schon klar.

          <a href="../shop/pc.php?<? echo "".SID.""; ?>">

          So hänge ich es an den Link. Wenn Cookies akzeptiert werden wird ein Cookie angelegt. Wenn ich keine Cookies anzeptiere hängt die Session am Link. Jetzt möchte ich zur Weiterverarbeitung die Session in einer Datenbank speichern

          $sqlbefehl = "insert into visitor (id,sess,zeit,titel,aktiv,session) Values ('','$IP','$zeit','$titel','','$PHPSESSID')";

          Es wird aber ncihts gespeichert

          Kommentar


          • #6
            Dann ist halt irgendwo ein Fehler drin!

            Willst Du uns hier verar***en?
            Sollen wir hellsehen, wo die Variablen herkommen?
            Bis jetzt seh ich nicht mal einen Aufruf von mysql_query().

            Zeig endlich mal den relevanten Code her. Das ist noch ein Stück vor und nach dieser einzelnen Zeile.

            Und dann gibst Du uns auch gleich noch die übrigen selbstverständlichen Informationen:
            - Was wird ausgegeben, wenn error_reporting(E_ALL); oben im Script steht?
            - Was steht im dem String drin?
            - Was wird vom mysql_query zurückgeliefert und was sagt ggf. mysql_error()?

            Versuch einfach mal, Dir vorzustellen, dass wir alle nicht hellsehen können.
            Dann klappt's vielleicht auch mit ner vernünftigen Frage...

            Nach inzwischen 100 Postings (und hoffentlich noch mehr gelesenen Postings) solltest Du sowas eigentlich inzwischen wissen.
            **********************************
            Nein, ich bin nicht die Signatur.
            Ich putze hier nur.
            **********************************

            Kommentar


            • #7
              Mein Gott. Nur weil Du Gerhard heißt mußt Du nicht gleich reagieren wie unser Nochkanzler. Man kann ja ganz normal sagen was man für einen Code braucht.

              Das ist der Teil wo die Session gespeichert werden soll
              $sql = "SELECT COUNT(id) FROM visitor WHERE sess='$IP'";
              $ergebnis = mysql_query($sql,$verbindung);

              if ($ergebnis==0)
              die(mysql_error());
              elseif(mysql_result($ergebnis,0,0)){
              $sqlbefehl = "UPDATE visitor set titel='$titel' Where sess='$IP'";
              } else {
              $sqlbefehl = "insert into visitor (id,sess,zeit,titel,aktiv,session) Values ('','$IP','$zeit','$titel','','$PHPSESSID')";
              }
              mysql_query($sqlbefehl,$verbindung);


              Das hab ich am Anfang der Seite stehen

              session_start();
              ini_set("session.cookie_lifetime", "3600"); // Angabe in Sekunden, 3600 -> 1 Stunde
              ini_set("session.gc_maxlifetime", "3600");

              Kommentar


              • #8
                wenn ich das angebe error_reporting(E_ALL);

                steht nichts anderes auf der Seite

                Kommentar


                • #9
                  Also wenn Du den dezenten Hinweis von Jojo nicht verstehst und auf meinen deutlicheren Hinweis auch wieder nur den gleichen Schnipsel postest, der ja gerade als unzureichend bezeichnet wurde, dann brauchst Du Dich nicht zu wundern, wenn ich es Dir noch deutlicher sage.

                  Bei der Gelegenheit kannst Du Dir auch gleich mal angewöhnen, PHP-Code auch als solchen zu markieren. Mit PHP-Tags kann man den dann auch schön lesen. (Ebenfalls etwas, was man nach 100 Postings mitkegriegt haben dürfte....

                  Wenn jetzt noch die Antworten bezüglich Inhalt des Strings und Ergebnis von mysql_query kommen, können wir mal weiter sehen. (Gemeint ist natürlich der zweite mysql_query-Aufruf)
                  **********************************
                  Nein, ich bin nicht die Signatur.
                  Ich putze hier nur.
                  **********************************

                  Kommentar


                  • #10
                    @rhartinger

                    Wenn du in anderen Foren die selbe Frage stellst, kann man sich eigentlich das Antworten hier sparen.
                    Etwas unfair ...

                    Kommentar


                    • #11
                      Sind in den anderen Foren lauter Hellseher unterwegs oder hat er dort auch Code gepostet?
                      **********************************
                      Nein, ich bin nicht die Signatur.
                      Ich putze hier nur.
                      **********************************

                      Kommentar


                      • #12
                        ich weis ja nicht wieso man dann gleich so angemacht wird. Was für einen 2. Query meinst Du denn? Ich hab nur denn wo ich die Session abspeichern will

                        Sorry wenn ich einen Posting ohne Code gemacht habe aber ich kann ja nicht den ganzen Code posten.

                        Kommentar


                        • #13
                          Du hast in dem gezeigten Code-Schnipsel ziemlich genau zwei Aufrufe von mysql_query.
                          Davon wird wohl einer der zweite sein.

                          Da ich den Inhalt des Querystrings auch vorher schon mal sehen wollte, als noch gar kein mysql_query zu sehen war, solltest Du zumindest wissen, welchen String ich meine.

                          Du sollst auch nur den relevanten Code posten.
                          Also den, in dem man sieht, wo die Parameter herkommen etc.
                          **********************************
                          Nein, ich bin nicht die Signatur.
                          Ich putze hier nur.
                          **********************************

                          Kommentar


                          • #14
                            Das ist aber der ganze Teil wo die Session gespeichert wird

                            Code:
                            //Aktualisierung der Besucherdaten
                            $zeit=time();
                            $titel="Start";
                            $IP = getenv("REMOTE_ADDR");
                            $sql = "SELECT COUNT(id) FROM visitor WHERE sess='$IP'";
                            $ergebnis = mysql_query($sql,$verbindung);
                            
                            if ($ergebnis==0)
                                die(mysql_error());
                            elseif(mysql_result($ergebnis,0,0)){
                                $sqlbefehl = "UPDATE visitor set titel='$titel'  Where sess='$IP'";
                            } else {
                                $sqlbefehl = "insert into visitor (id,sess,zeit,titel,aktiv,session) Values ('','$IP','$zeit','$titel','','$PHPSESSID')";
                            }
                            mysql_query($sqlbefehl,$verbindung);

                            Und so häng ich die Session an den Link

                            Code:
                            <a href="../shop/pc.php?<? echo "".SID.""; ?>">
                            Ich weis wirklich nciht welchen Teil Du noch brauchst. Ist ja nicht so das ich nichts schicken will. Also lassen wirsmit den Vorwürfen bitte.

                            Wenn ich Cookies nicht akzeptiere wird am Link die Session angehängt. Sie wird aber nicht gespeichert. Wie mache ich das dann? Ich nehme an das $PHPSESSID ist falsch.

                            Ich hoffe Du oder jemand anderes kann mir doch noch helfen

                            Kommentar


                            • #15
                              benutze mal die Konstante "SID"
                              aber du musst sie vermutlich davor in ne Variable speichern.

                              außerdem: mach mal ein or die(mysql_error()); hinter deine mysql-query, das hat dir gerhard aber schon gesagt

                              Wenn du Hilfe willst, muss auch von deiner Seite was kommen! Mindestens EInsatz!

                              Kommentar

                              Lädt...
                              X