Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.199
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #180 am: 07. Februar 2023, 16:12:54
    [...]
    Das Produkte Update und Produkte neu anlegen funktioniert.
    Der Bildupload für die Produkte/Hersteller/Kategorien jedoch noch überhaupt nicht. [...]

    Gibt es ein Log!? :-?

    Grüße

    Torsten

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #181 am: 07. Februar 2023, 17:09:25
    Keine Fehlermeldung im Log. CAO meldet nur in einem extra Fenster:

    "Übertragungsfehler: Code -1" "Meldung:UPLOAD FAILED"
    Im CAO-Log steht nichts weiter als die angeforderte Action z.B manufacturers_image_upload sowie user und password als MD5.

    Muss ich vielleicht die Image Ordner auch in der .htaccess vom SSL ausschließen ?

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #182 am: 08. Februar 2023, 12:17:08
    Habe noch einen Fehler entdeckt.
    Produkte lassen sich nicht löschen.
    Da ist ein Fehler in der function xtc_remove_product

    Code: PHP  [Auswählen]
    //BOF - Dokuman - 2009-11-04 - fix typo customers_status_array -> customers_statuses_array
              //for ($i=0,$n=sizeof($customers_status_array);$i<$n;$i++) {
              for ($i=0,$n=sizeof($customers_statuses_array);$i<$n;$i++) {
    //EOF - Dokuman - 2009-11-04 - fix typo customers_status_array -> customers_statuses_array

    Die for Schleife müsste so aussehen:

    Code: PHP  [Auswählen]
              for ($i=0,$n=sizeof($customers_statuses_array)-1;$i<$n;$i++) {

    So habe ich es jedenfalls in einer älteren Version und so funktioniert das löschen auch wieder.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.750
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #183 am: 08. Februar 2023, 16:30:58
    Das ist aber seltsam.
    Wenn man im for-Loop mit $i = 0  zu zählen beginnt dann reicht es ja wenn man das macht
    $i < sizeof($customers_statuses_array)
    also kleiner die Anzahl der Elemente in dem Array.
    Code: PHP  [Auswählen]
    for($i = 0, $n = sizeof($customers_statuses_array); $i < $n; $i++) {

    oder
    Code: PHP  [Auswählen]
    for($i = 0, $n = count($customers_statuses_array); $i < $n; $i++) {

    kann eigentlich nicht verkehrt sein.

    Oder halt so:
    Code: PHP  [Auswählen]
    for($i = 1, $n = count($customers_statuses_array); $i <= $n; $i++) {

    Gruß,
    noRiddle

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #184 am: 08. Februar 2023, 17:08:10
    So habe ich auch gedacht. Wenn ich das vorhergehende SQL
    $customers_statuses_query = xtc_db_query("select * from " . TABLE_CUSTOMERS_STATUS . " where language_id = '".$LangID."' order by customers_status_id");direkt in der DB ausführe bekomme ich 5 Stati? Statusse? augegeben.

    Diese werden dann hier in das Array geschrieben:
    Code: PHP  [Auswählen]
    while ($customers_statuses = xtc_db_fetch_array($customers_statuses_query)) {
                  $customers_statuses_array[] = array('id' => $customers_statuses['customers_status_id'],
                                                     'text' => $customers_statuses['customers_status_name']);
    }
    Dann müsste ja :
    Code: PHP  [Auswählen]
    sizeof($customers_statuses_array)
    den Wert 5 ergeben, oder liege ich da falsch ?
    Wenn ich mir zum debuggen den Wert von sizeof($customers_statuses_array) in eine Textdatei schreiben lasse, steht dort aber eine 6 und das ist eins zuviel.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.750
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #185 am: 08. Februar 2023, 17:23:14
    Ich kenne nicht den Code des Connectors. Ich kann deinen Ausführungen aber folgen.
    Wird dem Array eventuell noch etwas an anderer Stelle hinzugefügt ?
    $customers_statuses_array  wird irgendwo initialisiert/definiert worden sein, bevor es mit  $customers_statuses_array[]  erweitert wird.

    Gruß,
    noRiddle

    Addendum:
    Der Plural von Status ist Statús, also mit Betonung auf dem "u". Lateinische U-Deklination.
    Den Akzent habe ich dazugemacht um es zu verdeutlichen .

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.222
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #186 am: 08. Februar 2023, 17:30:26
    Schreibe doch mal das Array in die Datenbank oder besser in ein Log:

    Code: PHP  [Auswählen]
    error_log(print_r($customers_statuses_array, true), 3, DIR_FS_LOG.'cao.log');

    Gruss Gerhard

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #187 am: 08. Februar 2023, 17:48:39
    Danke Gerhard,
    Da sind tatsächlich 6 Werte im Array.
     
    Code: PHP  [Auswählen]
    [0] => Array
            (
            )

        [1] => Array
            (
                [id] => 0
                [text] => Admin
            )

        [2] => Array
            (
                [id] => 1
                [text] => Gast
            )

        [3] => Array
            (
                [id] => 2
                [text] => Neuer Kunde
            )

        [4] => Array
            (
                [id] => 3
                [text] => Händler
            )

        [5] => Array
            (
                [id] => 4
                [text] => Händler EU
            )

    Vielleicht liegt es hier dran:         $customers_statuses_array = array(array());
    Wird da vielleicht das Array initialisiert und gleich mit einem Wert gefüllt (0) ?

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.750
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #188 am: 08. Februar 2023, 18:00:39
    Wie ich vermutet habe. Mache daraus mal
    Code: PHP  [Auswählen]
    $customers_statuses_array = array();

    Das mit dem sizeof() - 1  ist doch Blödsinn.

    Gruß,
    noRiddle

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.222
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #189 am: 08. Februar 2023, 18:18:02
    Kannst du mal bitte die Version hier im Anhang testen ?

    Gruss Gerhard

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #190 am: 08. Februar 2023, 18:44:13
    Produkte löschen geht damit. Aber irgendwie geht das Produktupdate jetzt wieder mal nicht...
    Ich sitze heute schon zu lange vorm Rechner. Ich brauch ne Pause! Ich mache morgen früh weiter mit testen.

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #191 am: 09. Februar 2023, 11:01:27
    Ich habe jetzt mal meine letzte funktionierende Version genommen und Stückweise die Änderungen dort eingepflegt.

    In der Funktion CheckImages steigt das Script aus, wenn:
    Code: PHP  [Auswählen]
     if (!file_exists (DIR_FS_CATALOG_MIDI_IMAGES . $FileName))
        {
          require(DIR_FS_DOCUMENT_ROOT.(defined('DIR_ADMIN') ? DIR_ADMIN : 'admin/').'includes/product_midi_images.php');
        }

    oder
    Code: PHP  [Auswählen]
    if (!file_exists (DIR_FS_CATALOG_MINI_IMAGES . $FileName))
        {
          require(DIR_FS_DOCUMENT_ROOT.(defined('DIR_ADMIN') ? DIR_ADMIN : 'admin/').'includes/product_mini_images.php');
        }

    drin steht.
    Ich habe (noch) keine Ahnung warum. Die Verzeichnisse und Dateien sind vorhanden. Kann es irgendwas mit dem Bildprozessing zu tun haben ?

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #192 am: 09. Februar 2023, 11:41:18
    Ich glaube ich weiß jetzt woran es liegt.
    Ich hatte ja den Shop komplett neu installiert und dann einfach das Bilderverzeichnis aus dem alten Shop kopiert.
    Dort fehlen die Mini und Midi Bilder. Das erzeugt den CAO-XML Fehler beim Artikelupdate.
    Lege ich in CAO einen Artikel komplett neu an, in dem ich ihn kopiere und eine neue Artikelnummer gebe, gibt es kein Problem. (Bild-URL wird ja mitkopiert)

    Bleibt jetzt nur noch das Problem mit dem nicht funktionierenden Bild-Upload bei Artikeln und Herstellern und Kategorien.

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.222
    • Geschlecht:
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #193 am: 09. Februar 2023, 11:51:02
    Ich hatte die Möglichkeit etwas zu debuggen.
    Hier die neuen Dateien.

    Bitte testen.

    Gruss Gerhard

    Sergio Mueller

    • Mitglied
    • Beiträge: 178
    Re: SCHNITTSTELLE: CAO-Connector für modified eCommerce Shopsoftware
    Antwort #194 am: 09. Februar 2023, 12:20:06
    Funktioniert soweit, (Produkte / Kategorien / Hersteller anlegen/bearbeiten/löschen)
    Bildupload funktioniert nicht ! Der macht jetzt allerdings auch keinerlei Fehlermeldung mehr.
    Es sieht kurz so aus als wenn er was hochlädt, macht er aber nicht wirklich. Das Datenfeld in CAO wird auch nicht mit dem neuen Dateinamen gefüllt.