Hallo,
mir ist bei einem Kunden ein Fehler aufgefallen: Nach einem Shop-Update von 3.19 auf 3.20 wurde eine aktivierte Bezahlungsart nicht mehr angezeigt.
Ich habe den Fehler zurückverfolgt bis zu einem fehlerhaften Feld in der Datenbank, bzw. einer fehlerhaften SQL-Abfrage dazu.
Nach einem Update sah das Feld "cKundengruppen" in der Tabelle "tzahlungsart" mit einer definierten Kundengruppe so aus: "1;", die SQL Abfrage in der Funktion "gibZahlungsarten" (bestellvorgang.inc, Zeile 1181) sieht aber so aus: "... AND (tzahlungsart.cKundengruppen IS NULL or tzahlungsart.cKundengruppen=\"\" OR tzahlungsart.cKundengruppen like \"%;{$kKundengruppe};%\") ...". Das bedeutet, daß die Zahlungsart ohne das vorgestellte Semikolon im Feld "cKundengruppen" nicht ausgewählt wird und somit im Shop nicht zur Verfügung steht.
Wenn man im Shop jetzt eine andere Kundengruppe auswählt und dann wieder zurückstellt ist das vorgestellte Semikolon vorhanden. Ich denke ein SQL UPDATE Befehl, der die fehlenden Semikolons einsetzt, würde das Problem beheben.
Gruß aus Berlin
mir ist bei einem Kunden ein Fehler aufgefallen: Nach einem Shop-Update von 3.19 auf 3.20 wurde eine aktivierte Bezahlungsart nicht mehr angezeigt.
Ich habe den Fehler zurückverfolgt bis zu einem fehlerhaften Feld in der Datenbank, bzw. einer fehlerhaften SQL-Abfrage dazu.
Nach einem Update sah das Feld "cKundengruppen" in der Tabelle "tzahlungsart" mit einer definierten Kundengruppe so aus: "1;", die SQL Abfrage in der Funktion "gibZahlungsarten" (bestellvorgang.inc, Zeile 1181) sieht aber so aus: "... AND (tzahlungsart.cKundengruppen IS NULL or tzahlungsart.cKundengruppen=\"\" OR tzahlungsart.cKundengruppen like \"%;{$kKundengruppe};%\") ...". Das bedeutet, daß die Zahlungsart ohne das vorgestellte Semikolon im Feld "cKundengruppen" nicht ausgewählt wird und somit im Shop nicht zur Verfügung steht.
Wenn man im Shop jetzt eine andere Kundengruppe auswählt und dann wieder zurückstellt ist das vorgestellte Semikolon vorhanden. Ich denke ein SQL UPDATE Befehl, der die fehlenden Semikolons einsetzt, würde das Problem beheben.
Gruß aus Berlin