session oder DB-abfrage?

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

  • session oder DB-abfrage?

    Hallo Leute,

    hab da mal ne frage.

    folgendes, ich will eine sog. Besuchverfolgung proggen. So das dem User alle bereits gesehenden Artikel (Produkte) in einer Liste nochmal angezeigt werden, wenn er diese Aufruft.

    Wenn der User jetzt das Produkt in der Detailansicht aufruft speichere ich in der Session die Artikel_id, jetzt ist meine Überlegung ob ich nicht gleich alle relevanten Daten in der Session ablege oder ob ich eine separate DB-Abfrage mache um die dazugehörigen Daten zu holen (image, preis etc.) wenn der User die Liste aufruft. Was meint Ihr.
    mfg
    marc75

    <Platz für anderes>

  • #2
    Ich würde die Sachen nicht in der Session speichern. Die Daten zu den Produkten brauchst du ja nicht ständig und der User auch nicht. Es würde also reichen, wenn du das mit einer DB-Abfrage machst, wenn der User wieder darauf zu greift.
    Was denken die anderen?

    Kommentar


    • #3
      klingt für mich erstmal nach *brainstorming*

      ... den ansatz, eine session-var zu benutzen, finde ich nicht verkehrt,
      es reicht ja, in der session ein array mit den besuchten artikel-ids abzulegen und bei anforderung daraus eine sql-abfrage zu formulieren.
      Kissolino.com

      Kommentar


      • #4
        Original geschrieben von Wurzel
        klingt für mich erstmal nach *brainstorming*

        ... den ansatz, eine session-var zu benutzen, finde ich nicht verkehrt,
        es reicht ja, in der session ein array mit den besuchten artikel-ids abzulegen und bei anforderung daraus eine sql-abfrage zu formulieren.
        so hat er das auch vor. Er hat alle besuchten Artikel bereits in einer Session Variable. Er will jetzt nur wissen, ob er auch die Informationen zu den einzelnen Produkten in der Session speichern soll.

        Kommentar


        • #5
          Original geschrieben von biedermann
          [...], ob er auch die Informationen zu den einzelnen Produkten in der Session speichern soll.
          wozu?


          ach ja.... du brauchst auch nicht alles zu zitieren. der relevante teil reicht, wenn man schon zitiert.
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            wozu? ach, ne. Das hab ich oben ja auch schon beschrieben. Lieber später mit sql die einzelnen Informationen abrufen, wenn sie auch gebraucht werden...

            ne ne
            und lass mich doch zitieren *hehe* Ist mein Hobby

            Kommentar


            • #7
              wozu?
              um eventl. eine DB-Abfrage zu sparen, fragt sich nur was performer ist. Die wahrscheinlichkeit das mehr Artikeldaten in der Session landen als je wieder abgerufen werden ist natürlich gross.

              Denke mal das ich nur die Artikel_id in die session speichern werde. Und wenn der User das Script aufruft, eine Abfrage machen werde. Müsste ich mir dann nur noch gedanken machen wie ich den select mache.
              mfg
              marc75

              <Platz für anderes>

              Kommentar


              • #8
                Daran hab ich auch gedacht. Ich denke mal, dass viele Daten nie benötigt werden, wenn du alles die ganze Zeit in Session Variablen hast.

                Ich würde es auch so machen. Mit der Datenbankabfrage, wenn der User darauf zugreift. Der Sql-Befehl wird auch nicht großartig kompliziert werden.

                Kommentar


                • #9
                  Original geschrieben von marc75
                  Müsste ich mir dann nur noch gedanken machen wie ich den select mache.
                  wenn du die ids-in einen array hast reicht zB ein simples implode()
                  Kissolino.com

                  Kommentar


                  • #10
                    Original geschrieben von Wurzel
                    wenn du die ids-in einen array hast reicht zB ein simples implode()
                    hä? implode warum das denn.....
                    man kann doch gleich eine foreach schleife machen und den feldnamen mit dem wert verketten und hat halt immer abfragen ob das Ende schon erreicht wurde, wenn net kein and setzen.....
                    [color=blue]MfG Payne_of_Death[/color]

                    [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                    [color=red]Merke:[/color]
                    [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                    Murphy`s Importanst LAWS
                    Jede Lösung bringt nur neue Probleme
                    Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                    In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                    Kommentar


                    • #11
                      PHP-Code:
                      "SELECT ... WHERE id="implode(' or id=',$array) ." ..." 
                      Kissolino.com

                      Kommentar


                      • #12
                        noch besser .....
                        PHP-Code:
                        $sql "SELECT ... WHERE id IN (".implode(','$array).") ..."
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          ... *mist*, das "IN" hab ich nie auf der rechnung
                          Kissolino.com

                          Kommentar

                          Lädt...
                          X