Problem nach Aktivierung von Gutscheinen

  • Falls Ihr euch ein bissel mit PHP-Code anfreunden wollt, das die Meldungen ausgibt, einfach mal in die /includes/modules/order_total/ot_gv.php reinschauen. Da ist ganz viel davon drin. :)

    Ich wünsch dann mal viel Spass... :cool:

  • Danke für den Tipp Bernd :)

    Es funktioniert, ich habe die vorgenommenen Einstellungen mit unset so gelassen. Ich glaube es hat KEINEN großen Sinn sich jetzt noch mit dem System rumzuschlagen, weil bald die V2 kommt und dort das Koupon und Gutscheinsystem läuft, sofern die Informationen stimmen. :p

    Zu der Rechnung des Rabatts:

    In meinem Shop befinden sich einige Produkte mit 19% und 7%. Eben habe ich einen Testkauf durchgeführt, der Shop rechnet die Preise richtig aus und der Rabatt weicht nur geringfühgig ab (ca. 3 cent), liegt wahrscheinlich an der Rundung von Gleitzahlen. Was für den Kunden zu verkraften ist. :D

    Bei einem Bücherkauf von 74,70 ist die Differenz bei der Mwst bei mir schon fast 1EUR, also ein wenig mehr als zu verkraften - ausser bei den privaten Kunden, denen ist es egal und wir schicken ohnehin eine Rechnung aus unserer Wawi (....u. Gottseidank nicht aus dem Shop).

    Blöd ist nur, dass wir im Shop auch andere Kundengruppen haben (z.B. Händler) und da wird die Rechnung noch ein wenig komplizierter. Deine modifizierte ot_coupon.php kam nach meinen Test den richtigen Ergebnissen am nächsten.

    daniel S.=> wenn die V2 in Sachen Rabattkupons auf dem gleichen Mist basiert, der von os-commerce bis heute da vor sich hindümpelt, gehen wir Dir damit bestimmt wieder auf die Nerven (...auch wenn wir bis dahin PHP gelernt haben sollten)!

    Gruß
    Bernd

    PS: wir haben uns Euren Gutscheingenerator gekauft. Den habe ich bislang noch garnicht einbauen können, weil mich das ot_coupon-Chaos aufgehalten hat.>:(

    Einmal editiert, zuletzt von bernd888 (8. Dezember 2009 um 16:41)

  • Also das Problemchen mit der Meldung hab ich gefunden. Zumindest kam bei mir dann keine Meldung mehr.

    /includes/modules/order_total/ot_coupon.php:

    Suche:

    PHP
    if ($_POST['submit_redeem_coupon_x'] && !$_POST['gv_redeem_code'])

    Ersetze mit

    PHP
    if ($_POST['submit_redeem_coupon_x'] && !$_POST['gv_redeem_code'] && !isset($_SESSION['cc_id']))

    2 Mal editiert, zuletzt von siekiera (8. Dezember 2009 um 18:26)

  • Bei mir nicht. Beim ersten mal ja. Nach dem schliessen des Browsers, man bedenke die Session, ging es dann.
    Habe das auch auf einem zweiten Shop geprüft, klappte ebenfalls.

  • Bei mir nicht. Beim ersten mal ja. Nach dem schliessen des Browsers, man bedenke die Session, ging es dann.
    Habe das auch auf einem zweiten Shop geprüft, klappte ebenfalls.

    Bei mir wurden die ct_coupon.php sowie die checkout_confirmation.php (2x unset etc.) Deinen Vorschlägen entsprechend angepasst und der Meldungstext in der german.php wieder auf den alten Stand gebracht.
    Danach wurde der USer abgemeldet, das Browserfenster geschlossen - alles erneut aufgemacht, wieder angemeldet, neuer Warenkorb, neue Rabatt-Kupon-Eingabe.

    Danach gab es schon bei der Seite mit Anzeige des Warenkorbs oben die bekannte Meldung "Sie haben leider keinen...usw.".
    checkout_shipping=>keine Meldung
    checkout_payment=>alte Fehlermeldung - s.o.
    checkout_confirmation=>keine Meldung

    Gestern abend erhielt ich eine Änderungsmail für diesen Thread mit einem inzwischen von Dir gelöschten Beitrag, wo Du als Lösung etwas in irgendeiner gift_cart.php oder .html zur Vermeidung der o.a. Meldung geändert hattest (E-mail ist auf meinem Account zuhause). Kann es sein, dass Du diese hier nicht mehr nachlesbare Änderung ebenfalls bei beiden Testshops umgesetzt hast und sich unsere Dateiversionen (gift_cart-mäßig) insoweit zusätzlich unterscheiden?

    Das wäre für mich eine mögliche Erklärung des unterschiedlichen Verhaltens.

    Zweite Möglichkeit: Du verwendest den Gutschein und nicht den Rabattkupon (wohl eher unwahrscheinlich, wurde hier aber schon ein paar mal verwechselt)

    Gruß
    Bernd E.

  • Alle eure Änderungen in diesem Thread bis zu meinem Eintrag am 08.12.2009 18:17 sind hinfällig und bewirken nichts!
    Ich habe direkt an der Stelle angesetzt wo entschieden wird, diese Meldung in die Session(ausgeben) oder nicht.

    Ich habe das eben noch bei einem Kunden, der wollte den Coupon eingerichtet haben, getestet. Klappt ebenfalls.
    Das ist auch die einzige Passage im Checkout an der diese Meldung an die Session ausgegeben wird. Alles andere ist überflüssig, bzw. hat überhaupt keinen Sinn weil die Meldung dann schon in der Session liegt.

  • Also das Problemchen mit der Meldung hab ich gefunden. Zumindest kam bei mir dann keine Meldung mehr.

    /includes/modules/order_total/ot_coupon.php:

    Suche:

    PHP
    if ($_POST['submit_redeem_coupon_x'] && !$_POST['gv_redeem_code'])

    Ersetze mit

    PHP
    if ($_POST['submit_redeem_coupon_x'] && !$_POST['gv_redeem_code'] && !isset($_SESSION['cc_id']))

    hab ich jetzt umgesetzt und die fehlermeldung in german.php wieder hingeschrieben, wechle der bernd auf einen leeren wert geändert hat.

    Beim Probekauf kam im Warenkorb wieder die bekannte Meldung:

    Zitat

    Ihr Warenkorb enthält :
    Sie haben leider keinen Code eingegeben.

    :(

  • Alle eure Änderungen in diesem Thread bis zu meinem Eintrag am 08.12.2009 18:17 sind hinfällig und bewirken nichts!
    Ich habe direkt an der Stelle angesetzt wo entschieden wird, diese Meldung in die Session(ausgeben) oder nicht.

    Ich habe das eben noch bei einem Kunden, der wollte den Coupon eingerichtet haben, getestet. Klappt ebenfalls.
    Das ist auch die einzige Passage im Checkout an der diese Meldung an die Session ausgegeben wird. Alles andere ist überflüssig, bzw. hat überhaupt keinen Sinn weil die Meldung dann schon in der Session liegt.

    Ist ja wohl echt komisch, dass der "Muskel-Kollege" und ich beide den Fehler nicht loswerden, obwohl wir Deine Änderung eingebaut haben!???

    Hier übrigens Dein erster Lösungbeitrag v. 08.12.09, der anschließend von Dir wieder gelöscht wurde:

    Wie isses? Haste das auch noch verbaut?

    Gruß
    Bernd

  • Nein, das darf nicht rein, sonst wird der Code am Ende nicht verrechnet. Der bleibt wärend des checkouts in der Session. Wird der Code, $_SESSION['cc_id'], vorher gelöscht, ist zwar die Meldung weg, aber auch der Code.

  • Hallo,
    ich habe den Thread gerade wegen einem ähnlichen Problem gelesen.

    Mal eine Frage zum Verstehen:
    Warum habt Ihr die Fehlermeldungen in Sessions verlagert?

    Wenn ich z.B. eine Fehlermeldung in der checkout_payment.php erzeuge, danach wieder in den Shop klicke und den Checkout-Prozess beginne, taucht die alte Fehlermeldung ab dem Warenkorb wieder bei allen Schritten des Bestellprozesses auf - ist ja auch logisch, die Fehlermeldung bleibt ja in der Session stehen, egal wo auch immer ich mich im Shop befinde.

    Deshalb sind bei Bernd888 und shop-muskelaufbau.de die Fehlermeldungen einfach nicht weg gegangen...

    Gibts dafür eine Lösung?

  • Die $_SESSION an der richtigen Stelle löschen? In der v2 ist das Ding auf jeden Fall behoben. Die v2 wird mit seinen Funktionen und Verbesserungen auf jedenfall eine Revolution.

  • Hallo Bernd888

    gibt es inzwischen schon irgend eine Lösung wegen den falsch berechneten Summen bei Kupon für Wiederverkäufer?

    Ich habe das gleiche Problem und noch keine Lösung gefunden.

    DANKE!
    euroro