Artikelmenge auf 0 setzen im Warenkorb!

  • Tach zusammen,

    ich habe das Problem, dass wenn die Artikelmenge im Warenkorb bei manueller Eingabe auf 0 gesetzt wird, der Artikel nach dem aktualsierien nicht automatisch gelöscht wird. Hat jemand vielleicht einen Hinweis warum das so ist und an welcher Stelle ich das Problem lösen könnte. Ich habe mich jetzt ehrlich gesagt schon dumm und dusselig gesucht und konnte nicht wirklich einen Ansatz finden um das Problem zu lösen! Wäre für jede Hilfe wirklich sehr dankbar!

    Grüße

  • Sry das ich nochmals schreiben muss, aber hat wirklich keiner eine Idee oder einen Ansatz? Ich finde nicht wirklich einen und wahrscheinlich ist es mal wieder soo einfach! Wäre echt für jede Hilfe dankbar, da ich diese Möglichkeit dorch recht dringend benötige!

    Grüße

  • Das sollte es aber, es gibt genügend Shops bei denen es funktioniert also warum sollte es nicht auch im cSeo funktionieren? Das einzige Problem ist, dass ich nicht mehr weiss wo ich noch schauen soll! :(

    In der ../includes/cart_actions.php werden ja anscheinend alle Aktionen des Warenkorbs zur BEstandsveränderung ausgeführt!

    Zeile 87-93

    PHP
    if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) {
    						$_SESSION['cart']->remove($_POST['products_id'][$i]);
    					} else {
    						if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY;
    						$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
    						$_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
    					}

    Jedoch komischerweise nicht, wenn eine Manuelle Änderung der BEstellmenge durchgeführt wird mit anschließenden klick auf aktualisieren! Irgendwo ist da ein "kleiner" Fehler (im Sinne von fehlende Funktion) ich kann ihn aber nicht finden, ich weiss aber das sowas funktioniert.

    Die Löschenfunktion ist gut und schön. Wenn der Kunde aber einen "Warenkorb" vorgegeben bekommt und er nur noch die Stückmengen einzutragen hat, die in meinem Fall dann auch "0" sein kann, bringt einem die Löschenfunktion nichts, bei 60-80 Artikeln.

    Also der Vorgang sieht folgender Maßen aus:

    1. Kunde loggt sich ein
    2. wird direkt zum Warenkorb umgeleitet
    3. enthält dieser noch keine Produkte (alte Warenkorbzusammenstellung) wird der Warenkorb mit allen Produkten gefüllt
    4. Bestellen button noch nicht vorhanden, erst wenn mindestens einmal aktualisiert wurde
    5. Kunde gibt die Mengen für die zu bestellenden Produkte ein, und eben auch "0" wenn er das Produkt nicht haben will
    6. Warenkorb muss aktualisiert werden
    7. Kunde kann dann bestellen

    FERTIG! :)

    Warum so, weil ein Kunde immer den leichtesten Weg, auch im Internet sucht. Müsste der Kunde jedes einzelne Produkt aus dem Warenkorb mit der Löschfunktion entfernen, würde jedes mal die Seite wieder neu geladen werden und der Kunde müsste jedes mal zu letzten Position runterscrollen, was bei 60-80 nunmal unvermeidbar ist! Sooo, hoffe das verschafft einen kleinen Überblick und entschuldige mich, für die teilweise vielleicht wirre Ausführung, habe gerade eigentlich wenig Zeit aber die Antwort wollte ich unbedingt schreiben, wenn mir schon versucht wird zu helfen! *gg*

    Grüße

  • hmm, scheint wohl doch ein etwas größeres Problem zu sein?? Noch keiner was heraus gefunden von euch beiden, oder noch keiner Zeit gehabt sich die Sache mal anszuschauen?

    Greetz

    P.S: Sry for push

  • Also habe selber nochmal etwas nachgefortscht und bin auf etwas gestoßen, was mich sehr verwundert. Habe es, ja sry tut mir jetzt schon leid, mal mit dem Quellcode eines anderen Shopsystem verglichen, bei dem die von mir gewünscht Funktion möglich ist. Seltsamerweise sieht der Quellcode, fast identisch aus, bis auf ein paar Systemabhängige Unterschiede.

    Hier der COde vom anderen System:

    PHP
    for ($i=0, $n=sizeof($HTTP_POST_VARS['products_id']); $i<$n; $i++) {                                if (in_array($HTTP_POST_VARS['products_id'][$i], (is_array($HTTP_POST_VARS['cart_delete']) ? $HTTP_POST_VARS['cart_delete'] : array()))) {                                  $cart->remove($HTTP_POST_VARS['products_id'][$i]);                                } else {                                  $attributes = ($HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]]) ? $HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]] : '';                                  $cart->add_cart($HTTP_POST_VARS['products_id'][$i], $HTTP_POST_VARS['cart_quantity'][$i], $attributes, false);                                }                             }tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters)));

    Hier der Code vom cSEO V2:

    Versucht das anzupasse habe ich noch nicht, aufgrund mangelnder Zeit. Werde das aber mal versuchen, den Code vom "anderen" auf den Code vom cSEO anzupassen, vielleicht funktioniert es ja dann! Außer von euch kann einer was mit diesem Ansatz anfangen und hat die zündende Idee!!!

    Greetz

  • richtig, aber genau das macht mich ja stutzig. Wenn es keinen Unterschied gibt, warum funzt es dann bei osC und nicht beim cSEO? Ich will nicht umstellen auf osC, nur wegen dieser einen Funktion, die aber vom Kunden Pflicht ist.... keiner mehr einen Hinweis??? plzzz