Menu

Trotz AUSVERKAUFT noch in den Warenkorb?

Help 2.02
2003-10-12
2003-12-12
  • Heiner Rhoden

    Heiner Rhoden - 2003-10-12

    Hallo zusammen.
    Ich habe folgendes Problem:

    Ein Artikel, der als Rest eingestellt wird, kann nach ausverkauft (wird korrekt angezeigt) trotzdem noch bestellt werden.
    Dies sollte nach Aussage der Hilfeseite nicht mglich sein. Was hab ich falsch gemacht? Wo muss ich noch war ndern?

     
    • Andreas Kansok

      Andreas Kansok - 2003-10-13

      Kann ich mir eigentlich nicht vorstellen ... Freilich der 'In den Warenkorb'-Button ist noch da, man kann auch draufklicken, aber bei mir landet der Artikel dann trotzdem nicht im Warenkorb.
      (Zugegeben: Der Button solte nicht da sein oder sonst noch irgendein Hinweis, aber das ist eine andere Thematik.)

      Gru,
      Andreas.

       
    • Heiner Rhoden

      Heiner Rhoden - 2003-10-13

      Leider geht das bei mir. :o(

      Unter http://shop.cardcorner.net

      ist ein testartikel 99999 angelegt.

      Irgendwas mach ich wohl falsch. Wre schn, wenn du mal nachschauen knntest.

      Gru
      Heiner

       
      • Andreas Kansok

        Andreas Kansok - 2003-10-13

        Zweifelsfrei ...
        Problem ist offensichtlich, das der Bestand nicht gendert wird.

        In cart.php gibt es in den Methoden add_item() und modify_quantity() einen SQL-Queries wie "update size set stock='$newstock' where sizeID='$sizeID'"
        Genau an dieser $sizeID scheitert das. Aus irgendeinem Grunde wird kein Eintrag fr den Bestand in der Tabelle size erzeugt.

        Zur Erklrung:
        Jeder Artikel hat mindestens einen Eintrag fr den Bestand in der Tabelle size: size.ID, size.itemID, size.expiration, size.stock, size.newid=0
        Das hat noch nichts mit einer zustzl. Eigenschaft zu tun. Zu einer solchen wird der Eintrag erst, wenn in sizeinfo.value ein Wert zur size.ID erscheint.

        Ein genereller Fehler kann's wohl nicht sein, dann htten sich auch andere schon 'beklagt' ;-)

        Gru,
        Andreas.

         
        • Johannes Rohr

          Johannes Rohr - 2003-12-09

          Bei mir steht in der Tabelle "size" der Wert fr "expiration" der fraglichen Artikel auf "rest", unter "stock" lese ich "0.000". Die Tabelle "sizeinfo" enthlt keine Daten. Was msste denn dort stehen?

          Ciao,

          Johannes

           
          • Andreas Kansok

            Andreas Kansok - 2003-12-11

            Tabelle size reicht und klingt gut.
            sizeinfo ist nur fr den Text der 1sten Eigenschaft.

            Gru,
            Andreas.

             
    • Heiner Rhoden

      Heiner Rhoden - 2003-10-13

      Danke fr die Antwort, leider hilft mir das nicht wirklich weiter. :o(

      Hast du eine Idee, wie ich das beheben kann?

      Gru
      Heiner

       
      • Andreas Kansok

        Andreas Kansok - 2003-10-13

        Hm, das hatte ich befrchtet ... Ist auch nicht ganz einfach.

        In /admin/item.php mut Du suchen ...
        Zeile 49 (neuer Artikel) ...insert into size ..." eine 3 als zweites Funktionsargument fr db_query() bergeben. Die Variable $new_row[0] mu einen Wert haben, nmlich die neue Artikel-ID.

        Zeile 92 (Artikel ndern) ... update size ... auch mal schauen, was da geht (3 siehe oben).

        Vermutlich bekommt $new_row[0] bei Dir keinen Wert und alles andere sind Folgefehler. Die neue ID kriegst Du auch mit einer nderung in Zeile 17 raus. ndere den Query in:
        SELECT LAST_INSERT_ID() FROM item
        Oder so hnlich siehe PHP-Dokumentation mysql_insert_id() und MySQL-Dokumentation.

        Gru,
        Andreas.

         
    • Heiner Rhoden

      Heiner Rhoden - 2003-10-18

      Leider bekomm ich es nicht hin.

      Kann mir jemand helfen?

      Gru

      Heiner

       
    • Johannes Rohr

      Johannes Rohr - 2003-12-09

      Ich habe hier in etwa dasselbe Problem. Die Artikel werden zwar mit einem roten Kstchen als ausverkauft markiert, lassen sich aber nach wie vor in den Warenkorb legen und werden dort aufgefhrt.

      Gibt es mittlerweile einen "amtlichen" Fix fr das Problem? Ich muss gestehen, dass es mir etwas zu mhsam ist, mich durch den Quellcode, den ich noch berhaupt nicht kenne, zu beien.

      Ciao,

      Johannes

       
      • Andreas Kansok

        Andreas Kansok - 2003-12-11

        Nein, einen amtlichen Fix gibt's nicht.

        Unter http://sourceforge.net/tracker/index.php?func=detail&aid=858282&group_id=39285&atid=424796
        habe ich mal die show_item abgelegt, wie sie auch unter phpay.de im Einsatz ist.
        Das lst das Problem nicht, umgeht es aber.

        Gru,
        Andreas.

         
        • Johannes Rohr

          Johannes Rohr - 2003-12-12

          Vielen Dank dafr!

          brigens finde ich, dass es sinnvoll wre, wenn irgendwo neben dem roten Kstchen auch das Wrtchen "Leider vergriffen" (ebenfalls in Rot und <b>)  zu lesen ist. Denn ich bin mir nicht sicher, ob jeder sofort versteht, was da gemeint ist. Ich habe die show_expi.inc.php bei mir so angepasst und finde es so wesentlich besser.

          Zu guter letzt besteht dasselbe Problem auch mit detail.php: Auch in der Detailansicht lassen sich vergriffene Sachen immer noch in den Warenkorb legen. Es msste dort also irgendwo vor Zeile 80 eine entsprechende Kontrollabfrage eingebaut werden.

          Ciao,

          Johannes

           
          • Johannes Rohr

            Johannes Rohr - 2003-12-12

            Kleine Ergnzung zu dem, was ich oben schrub: Sowohl detail.php als auch show_item_0.inc.php verwenden doch ihrerseits show_expi.inc.php, wo die Kontrollabfrage ob vergriffen oder nicht ja korrekt durchgefhrt wird. Anstatt also sowohl in detail.php als auch in show_item_0.inc.php je eine gesonderte Datenbankabfrage durchzufhren, wre es doch ressourcenschonender, stattdessen in show_expi.inc.php eine Variable $out_of_stock zu setzen, auf die dann spter zurckgegriffen werden kann.

            Ciao,

            Johannes

             
          • Andreas Kansok

            Andreas Kansok - 2003-12-12

            [Ausverkauft-Text] Kannst Du Dich dazu hinreien lassen, Deine show_expi* vielleicht beim Patch fr die show_item* zu posten? Dann htten auch andere was davon ;-)

            [detail.php] Brauchst Du ja nur in der show_item_0.inc.php abzuschreiben ;-)
            Und dann vielleicht auch posten ...

            Gru,
            Andreas.

             

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.