Beiträge von Teelirium

    Hallo,

    ich habe versucht, die Admin Startseite (https://www.meinedomain.de/admin/start.php) anzupassen, damit ich oben rechts immer alle meine eingerichteten Bestellstatus sehe. dazu habe ich die admin/start.php so angepasst:

    ---

    <table width="100%" class="boxTableFull">
    <tr>
    <td style="background:#e4e4e4">Offen:</td>
    <td style="background:#e4e4e4"><?php echo $orders1['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">In Bearbeitung:</td>
    <td style="background:#e4e4e4"><?php echo $orders2['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Versendet:</td>
    <td style="background:#e4e4e4"><?php echo $orders3['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Zahlung eingegangen:</td>
    <td style="background:#e4e4e4"><?php echo $orders4['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">PayPal Abbruch:</td>
    <td style="background:#e4e4e4"><?php echo $orders5['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Offen PP bezahlt:</td>
    <td style="background:#e4e4e4"><?php echo $orders6['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Offen PP wartend:</td>
    <td style="background:#e4e4e4"><?php echo $orders7['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">PayPal abgelehnt:</td>
    <td style="background:#e4e4e4"><?php echo $orders8['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Lastschrift offen:</td>
    <td style="background:#e4e4e4"><?php echo $orders9['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Nachnahme offen:</td>
    <td style="background:#e4e4e4"><?php echo $orders10['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Bestellung abgeschlossen:</td>
    <td style="background:#e4e4e4"><?php echo $orders11['count']; ?></td>
    </tr>
    <tr>
    <td style="background:#e4e4e4">Nicht zugeordnet:</td>
    <td style="background:#e4e4e4"><?php echo $orders0['count']; ?></td>
    </tr>
    </table>

    ---

    Ich sehe nun im Admin zwar diese Tabelle, aber bis auf die schon vorher eingerichteten Bestellstatus "Offen", "In Bearbeitung", "Versendet" und "Nicht zugeordnet" taucht hinter keinem Status eine Zahl auf. Was muss ich denn da noch anpassen, dass es funktioniert?

    Danke für die Antworten vorab!

    Viele Grüße!
    Florian
    http://www.teelirium.de

    ja, das ging schnell, aber so wird jetzt der richtige Bankname wenigstens aufgelöst. Ich habe den Returncode nur ein wenig nach unten verschieben müssen. Die letzten Zeilen der Datei /includes/classes/banktransfer_validation.php:

    /* -------- Dies ist die wichtigste function ---------- */
    function CheckAccount($banktransfer_number, $banktransfer_blz) {
    // Wir kontrollieren auf einfache Art und Weise das
    // bloße Vorhandensein der BLZ/Kontonr.


    $KontoNR = ereg_replace('[^0-9]', '', $banktransfer_number);
    $BLZ = ereg_replace('[^0-9]', '', $banktransfer_blz);

    $Result = 0;
    if ($BLZ == '' || strlen($BLZ) < 8) {
    return 8; /* Keine BLZ übergeben */
    }
    if ($KontoNR == '') {
    return 9; /* Keine Kontonummer übergeben */
    }


    /* Beginn Implementierung */
    $adata = $this->query($BLZ);
    if ($adata == -1) {
    $Result = 5; // BLZ nicht gefunden;
    $PRZ = -1;
    $this->PRZ = $PRZ;
    $this->banktransfer_number=ltrim($banktransfer_number,"0");
    $this->banktransfer_blz=$banktransfer_blz;
    } else {
    $this->Bankname = $adata['bankname'];
    $this->PRZ = str_pad ($adata['prz'], 2, "0", STR_PAD_LEFT);
    $this->banktransfer_number=ltrim($banktransfer_number,"0");
    //$this->banktransfer_number=$this->ExpandAccount($banktransfer_number);
    $this->banktransfer_blz=$banktransfer_blz;

    $PRZ = $adata['prz'];
    /*
    switch ($PRZ) {
    case "52" : $Result = $this->Mark52($KontoNR, $BLZ); break;
    case "53" : $Result = $this->Mark53($KontoNR, $BLZ); break;

    case "B6" : $Result = $this->MarkB6($KontoNR, $BLZ); break;
    case "C0" : $Result = $this->MarkC0($KontoNR, $BLZ); break;
    default:
    $MethodName = "Mark$PRZ";
    if (method_exists($this, $MethodName)){
    $Result = call_user_func (array($this, $MethodName), $KontoNR);
    } else {
    $Result = 3;
    }
    }
    */
    } /* end if num_rows */

    // Wir brechen hier gleich ab (0 wird immer als Erfolg zurückgemeldet)
    return 0;
    // Alter Code bleibt noch stehen für alle Fälle ;)

    return $Result;
    } /* End of CheckAccount */
    } /* End Class AccountCheck */
    ?>


    Es wundert mich nur, dass ich scheinbar der einzige bin, der diese Probleme hat. Ich habe sowohl meine DB als auch mein blz.csv auf den Stand von 2010 gebracht mit den Daten der Bundesbank. Vielleicht liegt es daran? Habe in der /includes/classes/banktransfer_validation.php gesehen, dass die letzten Änderungen/Ergänzungen von 2006 sind. Evtl. liegt es daran.

    Viele Grüße!
    Florian

    Hallo,

    das war ein entscheidender Hinweis, danke!

    Ich habe die /includes/classes/banktransfer_validation.php nun so angepasst, dass als Returncode immer eine "0" zurückgegeben wird. Die "0" ist laut der Doku der Returncode, der besagt, dass alles in Ordnung ist. Hier die letzten Zeilen der Datei /includes/classes/banktransfer_validation.php:

    ---
    /* -------- Dies ist die wichtigste function ---------- */
    function CheckAccount($banktransfer_number, $banktransfer_blz) {
    // Wir kontrollieren auf einfache Art und Weise das
    // bloße Vorhandensein der BLZ/Kontonr.


    $KontoNR = ereg_replace('[^0-9]', '', $banktransfer_number);
    $BLZ = ereg_replace('[^0-9]', '', $banktransfer_blz);

    $Result = 0;
    if ($BLZ == '' || strlen($BLZ) < 8) {
    return 8; /* Keine BLZ übergeben */
    }
    if ($KontoNR == '') {
    return 9; /* Keine Kontonummer übergeben */
    }

    // Wir brechen hier gleich ab (0 wird immer als Erfolg zurückgemeldet)
    return 0;

    // Alter Code bleibt noch stehen für alle Fälle ;)

    /* Beginn Implementierung */
    ---
    usw.
    ---

    Ich versuche, die Datei noch so anzupassen, damit der Bankname wenigstens richtig aufgelöst wird. Wenn ich das hinkriege melde ich mich nochmal. Aber Hauptsache ist erstmal, dass das Modul wieder funktioniert. Ob die Kontonummer valide ist, kann man übrigens auch hier überprüfen: http://www.ckonto.de/

    Viele Grüße und danke für die Hilfe!!!
    Florian
    http://www.teelirium.de

    So, ich schon wieder. Ich habe nun im Modul die DB Abfrage augeschaltet. Nun wird ja zur Prüfung die blz.csv herangezogen. Auch die ist bei mir auf dem aktuellsten Stand. Laut Bundesbank gibt es bei verschiedenen Banken keine offengelegte Prüfziffer, dann wird als Prüfziffer bei der betroffenen Bank die 09 eingesetzt (http://www.bundesbank.de/zahlungsverkeh…nberechnung.php). Nun habe ich ein Konto, bei dem die Abfrage anhand er blz.csv funktioniert. Ändere ich in der blz.csv die Prüfziffer dieser Bank auf 09, kann ich dieses Konto nicht mehr angeben, sondern erhalte immer die Fehlermeldung "Diese Kontonummer ist nicht pruefbar, bitte kontrollieren zur Sicherheit Sie Ihre Eingabe nochmals." Ich vermute, dass wird mit allen Banken so sein, die als Prüfziffer die 9 oder 09 haben. Zumindest habe ich es mit mehreren so probiert. Deswegen wäre es mir enorm wichtig, wenn ich wüsste:

    Wo kann ich die Überprüfung der Prüfziffer im Lastschriftmodul KOMPLETT ausschalten? Keine DB Abfrage, keine Abfrage der blz.csv!!!

    Danke für die Antworten!

    Viele Grüße!
    Florian

    OK, ich habe den table 'banktransfer' gelöscht und die Daten der banktransfer_blz2010.sql dort eingefügt. Getestet und mit meinem Privatkonto klappt die Abfrage nun. Aber: Ich kann nun alte Bestellungen, die die Zahlungsweise "Lastschrift" hatten, nicht mehr bearbeiten. Ich erhalte eine Fehlermeldung, dass Felder in dem table 'banktransfer' nicht vorhanden sind. So wie ich es sehe, dient der table 'banktransfer' dazu, die eingegebenen Daten der Kunden bei Lastschriftzahlungsweise zu speichern und die Tabelle 'banktransfer_blz' dient der Überprüfung, ob der Kunde eine der Prüfziffer entsprechende Kontonummer eingegeben hat. Der Rat, die Daten also einfach mal in den table 'banktransfer' zu spielen hätte auch ganz desaströse Folgen haben können. Glücklicherweise habe ich ein Backup des tables gemacht und konnte ihn auch wieder zurückspielen.
    Nun die Frage:

    1. Wo (in welcher PHP/HTML Datei) muss ich was genau ändern, dass der Shop die Kontoüberprüfung anhand des tables 'banktransfer_blz' durchführt und nicht im table 'banktransfer' schaut?

    Bei einem eben durchgeführten Test, hat der Shop die Daten eines meiner Konten problemlos akzeptiert. Daten eines anderen Kontos mit 100% richtigen Daten, wurden nicht akzeptiert, sondern ich bin wieder auf der checkout_payment.php gelandet mit dem Hinweis: "Diese Kontonummer ist nicht pruefbar, bitte kontrollieren zur Sicherheit Sie Ihre Eingabe nochmals." Ich kann nun überprüfen soviel ich will, die eingegebenen Daten stimmen, aber der Shop lässt mich nicht weiter. Wenn ich in den Einstellungen des Lastschriftmoduls den Haken bei der Einstellung "Datenbanksuche für die BLZ verwenden?" auf FALSE setze, schaut der Shop meines Wissens immer noch in der blz.csv nach, ob die eingegebenen Daten stimmen. Nun hätte ich aber gerne, dass der Shop nirgends prüft, ob die eingegebenen Daten stimmen, sondern jede Kombination von BLZ und Kontonummer akzeptiert. Daher meine zweite Frage:

    2. Wo kann ich die Überprüfung der Prüfziffer im Lastschriftmodul KOMPLETT ausschalten? Keine DB Abfrage, keine Abfrage der blz.csv

    Bin für jeden Tip dankbar!

    Viele Grüße
    Florian
    http://www.teelirium.de

    So langsam kommt Licht ins Dunkel, danke schonmal für die Unterstützung. Aber, mmhhhh, ich habe die Tabelle 'banktransfer' aber schon und da sind auch Daten drin. Ich habe, bevor der Shop online ging, alles möglich ausprobiert, so auch die Zahlungsoptionen und damals auch eine Testbestellung per Lastschrift bezahlt. Genau diese Daten stehen in meiner Tabelle 'banktransfer' schon drin. Irgendwie zögere ich gerade, diese Tabelle zu löschen...
    [Blockierte Grafik: http://www.teelirium.de/db_banktransfer.jpg]

    Hallo,

    ich hab mich da jetzt mal durchgefummelt und die Tabelle banktransfer_blz angelegt. Die Datenbankabfrage im Zahlungsmodul ist eingeschaltet und ich erhalte jetzt die Fehlermeldung:

    ---
    1054 - Unknown column 'blz' in 'where clause'

    SELECT * from banktransfer WHERE blz = '67290100'

    [XT SQL Error]
    ---

    wenn ich per Lastschrift bezahlen möchte.

    Langsam gehen mir die Ideen aus :(

    Ich versuche mal aus Deinen Antworten mir das irgendwie zu erschließen was Du meinst, was - ehrlich gesagt - nicht ganz einfach ist.

    Also: Wenn ich die Überprüfung EINschalte, dann benötige ich in meiner mySQL Datenbank den Tabel "banktransfer_blz". Wenn ich die Überprüfung AUSschalte, dann benötige ich die csv Datei. Sehe ich das richtig?

    Ich habe den Table "banktransfer_blz" nicht und wenn ich die Überprüfung ausschalte kommt es zu obiger Fehlermeldung.

    Was kann/soll ich nun tun??? Wie kann ich den table anlegen? Wie kann ich ausschalten, dass überhaupt was abgefragt wird?

    Viele Grüße!
    Florian

    Hallo,

    ein Kunde hat mich gestern darauf aufmerksam gemacht, dass meine Zahlungsart Lastschrifteinzug wohl nicht richtig funktioniert. Ich habe das gerade mal nachvollzogen:
    Als der Kunde mich anrief, war bei Module > Zahlungsoptionen > Lastschriftverfahren > Bearbeiten die Option "Datenbanksuche für die BLZ verwenden?" auf True gesetzt. Ich habe eine Testbestellung versucht, bekomme dann die Fehlermeldung:

    ---
    1054 - Unknown column 'blz' in 'where clause'

    SELECT * from banktransfer WHERE blz = '67290100'

    [XT SQL Error]
    ---

    Ich habe diese Überprüfung ausgeschaltet und kann jetzt als Kunde dennoch nicht mit Lastschrift bezahlen, da bei Eingabe einer Fantasie-BLZ die Fehlermeldung "Diese Bankleitzahl existiert nicht, bitte korrigieren Sie Ihre Angabe." kommt, oder, wenn ich die richtige BLZ angegeben habe, die Fehlermeldung "Diese Kontonummer ist nicht pruefbar, bitte kontrollieren zur Sicherheit Sie Ihre Eingabe nochmals." kommt.
    Dann kann ich die Kontonummer sooft ich will neu eigeben und auf "Weiter" klicken, ich lande immer wieder im Zahlungsoptionenbildschirm mit der Fehlermeldung und komme nicht weiter im Bestellprozess.

    Ein Desaster!

    Wieso prüft der Shop die BLZ und/oder Kontonummer trotzdem, obwohl ich es in den Optionen ausgeschaltet habe und, viel wichtiger: Was kann ich umstellen oder tun, dass meine Lastschriftzahlung funktioniert? Eine Überprüfung auf Korrektheit ist erstmal zweitrangig.

    Wär echt wichtig.... danke für die Antworten vorab!

    Viele Grüße!
    Florian
    http://www.teelirium.de

    Hallo,

    ich möchte gerne den Button "Bestellen" auf der checkout_confirmation.php sowohl oben als auch unten hinbringen. Unten ist er ja schon, aber wie bekomme ich den Button nach oben? Ich hätte ihn gerne direkt da, wo die Versandadresse und die Rechnungsadresse angegeben ist, sodass der Kunde nicht unbedingt ganz nach unten scrollen muss, um endgültig zu bestellen.

    Danke für die Hilfe!

    Viele Grüße
    Florian
    http://www.teelirium.de

    Hallo,

    ich habe in meinem Shop die Lagerverwaltung aktiviert und nutze auch die Funktion der Sonderangebote. Ich habe einige Produkte als Sonderangebote (-10% bis 31.03.10) eingetragen. Die Kunden können auch bei negativem Warenbestand ohne Probleme die Artikel bestellen. Nun habe ich festgestellt, dass die Sonderangebote ohne ersichtlichen Grund in dem Modul aufgehoben wurden. Kann es sein, dass wenn ein Produkt auf den Warenbestand unter 0 rutscht, dass es dann automatisch aus den Sonderangeboten herausgenommen wird? Ich habe in meinem Shop diese Erfahrung gemacht, bin aber nicht ganz sicher, ob es daran liegt, dass die Produkte aus den Sonderangeboten rausfliegen.

    Viele Grüße!
    Florian
    https://support.commerce-seo.de/www.teelirium.de

    Laut UStG §1, Abschnitt 2a schon. Dort geht es darum, in welchen Gebieten Steuern zu erheben sind und dort steht: "(2a) Das Gemeinschaftsgebiet im Sinne dieses Gesetzes umfasst das Inland im Sinne des Absatzes 2 Satz 1 und die Gebiete der übrigen Mitgliedstaaten der Europäischen Gemeinschaft, die nach dem Gemeinschaftsrecht als Inland dieser Mitgliedstaaten gelten (übriges Gemeinschaftsgebiet). Das Fürstentum Monaco gilt als Gebiet der Französischen Republik; die Insel Man gilt als Gebiet des Vereinigten Königreichs Großbritannien und Nordirland. Drittlandsgebiet im Sinne dieses Gesetzes ist das Gebiet, das nicht Gemeinschaftsgebiet ist."

    Danke für den Hinweis, der mich auf die richtige Spur gebracht hat. Es ist eine Einstellung in der Tabelle "zones_to_geo_zones". Dort muss man die geo_zone_id des entsprechenden Landes (zone_country_id von Monaco=141) von 6 auf 5 ändern. Dann wird auch Monaco mit Steuer berechnet. Die jeweilige zone_country_id eines Landes findet man in der Tabelle countries.

    Klappt! Danke!

    Viele Grüße!
    Florian
    http://www.teelirium.de