rechtstexte für onlineshop
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: MODUL: ICEcat Datenblätter einbinden

    tweber

    • Neu im Forum
    • Beiträge: 15
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #525 am: 20. März 2011, 18:33:43
    [...]
    Wir sollten noch ein Timeout einbauen. Und dann wäre noch die Überlegung, ob sich nochmal jemand dahinter klemmt und raus bekommt, wie ICEcat zum Thema Cache steht. Sollten wir dann ggf. doch nochmal überdenken und einbauen, wenn wir grünes Licht haben.
    [...]

    Ob das mit dem Cache erlaubt ist, habe ich mich auch schon gefragt. Es ist aber so, dass der "Batavi" - Shop (Das ist das offizielle Shopsystem von ICEcat und ebenfalls OS) die Daten sogar in der Datenbank cached. Ich hatte mal begonnen das Ganze nach modified eCommerce Shopsoftware zu portieren, es dann aber aus Zeitgründen (erstmal) wieder aufgegeben. Kann das aber zur Verfügung stellen, wenn es jemanden interessiert. Der Datenabruf und die Ablage in der DB sollten eingentlich schon tun. Hab aber den leztzen Stand nicht mehr ganz genau im Kopf.  :?

    Grüße

    Torsten

    Managed Server

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #526 am: 20. März 2011, 18:49:46
    Wir müssen ja das Rad nicht neu erfinden, da wir den Cache ja schon umgesetzt hatten. Wichtig ist nur zu wissen, ob das von ICEcat erlaubt ist? :?

    Dass es in Betavi enthalten ist, ist für mich kein Freibrief. :)

    Grüße

    Torsten

    bkabel

    • Schreiberling
    • Beiträge: 341
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #527 am: 20. März 2011, 18:51:12
    Hi Torsten (tweber),

    genau das habe ich auch gesehen mit dem Cache in die Datenbank, aber ich denke damit wird die Datenbank wirklich ziemlich voll...  :whistle:
    Den Cache in seperate Ordner zu legen, so wie es jetzt z.Z. ist finde ich besser. Auch mit der delete.php die dafür gedacht war, hin und wieder alle gecacheten Daten inkl. Leichen zu bereinigen und ggf. Änderungen im XML-Code einzupflegen!  ;)
    Vorausgesetzt ICEcat erlaubt Caching der Dateien!  :!:

    Ich stelle nochmal deine Function getICEcatXML mit ein paar geänderten Stellen hier rein.
    Schau mal bitte drüber und sag was du davon hälst! Ach ja, was bezweckst du mit der Funktion "error_log()"?

    Code: PHP  [Auswählen]
      // BOF - Function => Get ICEcat XML-File to Cache
        function getICEcatXML($ean='', $vendor = '', $vendor_name = '', $lang = 'de', $requesttype = 'ean') {
          error_log("getICEcatXML called with: ean:" . $ean . " vendor:" . $vendor . " vendorname:" . $vendor_name . " lang:" . $lang . " type:" . $requesttype);
          $filetype = strtr($ean.$vendor, '%', '-');
          $xmlfile = 'ICEcat_cache/ICEcatXML/'.$filetype.'.xml';
          $phpfile = 'ICEcat_cache/ICEcatData/'.$filetype.'.php';
          if(file_exists($xmlfile)) {
            $xml = simplexml_load_file($xmlfile);
            $xml_item = $xml->Product['ErrorMessage'];
            if ($xml_item != null) {
              unlink($xmlfile);
                if (file_exists($phpfile)) {
                  unlink($phpfile);
                }
                  $data = false;
                  return $data;
            } else {
            return file_get_contents($xmlfile);
            }
          }
          $ch = curl_init();
          curl_setopt($ch, CURLOPT_HEADER, 0);
          if ($vendor != '' && $vendor_name != '') {
            // with htn and manufacturer
            curl_setopt($ch, CURLOPT_URL, "http://data.icecat.biz/xml_s3/xml_server3.cgi?prod_id=".$vendor.";vendor=".$vendor_name.";lang=".$lang.";output=productxml");
          } else {
            // with ean
            curl_setopt($ch, CURLOPT_URL, "http://data.icecat.biz/xml_s3/xml_server3.cgi?ean_upc=".$ean.";lang=".$lang.";output=productxml");
          }
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
          curl_setopt($ch, CURLOPT_USERPWD, ICECAT_USERNAME.":".ICECAT_PASSWORD);
          curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
          //curl_setopt($ch, CURLOPT_TIMEOUT, 1);
          //curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
          $data = curl_exec($ch);
          if (!$data) {
            //error_log('curl connection error');
            curl_close($ch);
            return;
          } else if (curl_getinfo($ch,CURLINFO_CONTENT_TYPE) == "text/html; charset=utf-8") {
            //error_log("req: " . $requesttype . " ean: " . $ean . " vendor: " . $vendor_name ." curlinfo: ". curl_getinfo($ch,CURLINFO_CONTENT_TYPE));
            curl_close($ch);
            return;
          }
          $xml = new SimpleXMLElement($data);
          $xml_item = $xml->xpath("//ProductFeature");
            if ($xml_item != null) {
              //error_log("req: " . $requesttype . " ean: " . $ean . " htn: " . $vendor . " vendor: " . $vendor_name ." curlinfo: ". curl_getinfo($ch,CURLINFO_CONTENT_TYPE));
              //error_log("curlinfo: ". curl_getinfo($ch,CURLINFO_CONTENT_TYPE));
              file_put_contents($xmlfile, $data);
              curl_close($ch);
              return $data;
            }
        }
      // EOF - Function => Get ICEcat XML-File to Cache
    Viele Grüße
    Björn

    tweber

    • Neu im Forum
    • Beiträge: 15
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #528 am: 20. März 2011, 20:08:41
    [...]
    genau das habe ich auch gesehen mit dem Cache in die Datenbank, aber ich denke damit wird die Datenbank wirklich ziemlich voll...  :whistle:

    Den Cache in seperate Ordner zu legen, so wie es jetzt z.Z. ist finde ich es besser. Auch mit der delete.php die dafür gedacht war, hin und wieder alle gecacheten Daten inkl. Leichen zu bereinigen und ggf. Änderungen im XML-Code einzupflegen!  ;)
    [...]

    Da mit der vollen Datenbank ist schon richtig, aber durch die Ablage in der DB ergibt sich auch die Möglichkeit, eine erweiterte Suchfunktionen zu realisieren. Also z.B. Einschränkungen auf die Speichergröße eines Notebooks oder ähnliches. Möglicherweise kann der Shop das ja jetzt schon, dann habe ich das aber noch nicht gefunden. Zudem läßst sich in Verbindung mit der InnoDB referentielle Integrität realisieren und damit die DB sauber aufräuem. Geht natürlich auch mit den Dateien, ist aber aufwändiger und man muss es ausprogrammieren, was immer auch zu Fehlern führen kann (aber nicht muss).

    [...]
    Vorausgesetzt ICEcat erlaubt Caching der Dateien!  :!:
    [...]

    Ohne es wirklich zu wissen, gehe ich eigentlich davon aus. Die bieten ja sogar eine Software an, die den Bestand hostet, z.B. für den Falls , dass man mehrere Shops betreibt oder die Daten noch anderweitig nutzt. Letztendlich muss das ja sogar in deren Interesse sein, da durch das Caching Serverlast eingespart wird. Hier der Link zum Tool:
    IcecatPIM

    Und hier What is the Icecat Fair Use Policy? kann ich eigentlich auch kein Cache Verbot erkennen.

    [...]
    Ich stelle nochmal deine Function getICEcatXML mit ein paar geänderten Stellen hier rein.
    Schau mal bitte drüber und sag was du davon hälst! Ach ja, was bezweckst du mit der Funktion "error_log()"?
    [...]

    error_log dient nur für Debugausgaben und kann entfernt werden. FirePHP ist da eigentlich eleganter, da man dann nicht ständig in in der ServerLog nachschauen muss sondern das bequem im Firebug anschauen kann.

    Code: PHP  [Auswählen]
        $xml = new SimpleXMLElement($data);
        $xml_item = $xml->xpath("//ProductFeature");
          if ($xml_item != null) {
            //error_log("req: " . $requesttype . " ean: " . $ean . " htn: " . $vendor . " vendor: " . $vendor_name ." curlinfo: ". curl_getinfo($ch,CURLINFO_CONTENT_TYPE));
            //error_log("curlinfo: ". curl_getinfo($ch,CURLINFO_CONTENT_TYPE));
            file_put_contents($xmlfile, $data);
            curl_close($ch);
            return $data;
          }
     
    Sowas in der Art hatte ich auch überlegt, mich aber dagegen entschieden, da dann auch immer wieder geladen wird, auch wenn ICEcat sowieso nichts im Katalog hat. Bevorzugen würde ich einen "intelligenteren" Löschmechanismus, der ab und an die "leeren" Files (Leichen) löscht, um einen neuen Ladeversuch zu ermöglichen.

    Grüße

    Torsten

    alca

    • Neu im Forum
    • Beiträge: 22
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #529 am: 20. März 2011, 20:44:04
    Hallo zusammen

    Ich habe mich mal durch die Webseite von ICEcat gewühlt. Wenn ich es richtige verstehe, kann man auch jeden Tag eine aktuelle Datei von ihrem Server runterladen und frei verwenden.

    Somit denke ich, dass ein Caching kein Problem sein sollte, da man mit dem Datei-Download ja etwas ähnliches macht.

    Werde mal den Shop hochladen und dann hier die URL bekannt geben.
    Aktuell ist es nur ein Test, sollte aber bis Ende Monat fertig sein.

    Gruss
    alca

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #530 am: 20. März 2011, 20:52:20
    "Somit denke ich" ist für mich nicht das, was ich gerne hören möchte.

    Wieso schreibt nicht einfach mal einer von euch eine E-Mail, damit wir etwas schwarz auf weiss haben?!

    Alles andere ist Spekulation, wie ich hier im Thema bereits mehrfach gesagt habe, aber ich wiederhole mich immer wieder so gerne. :D

    Grüße

    Torsten

    tweber

    • Neu im Forum
    • Beiträge: 15
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #531 am: 20. März 2011, 21:22:23
    Hängt wohl daran, dass die Frage bereits bei ICEcat im Forum gestellt wurde. Ist noch gar nicht so lange her, aber geantwortet hat keiner.  :`(
    Cacheing

    Grüße

    Torsten

    bkabel

    • Schreiberling
    • Beiträge: 341
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #532 am: 20. März 2011, 21:44:00
    Diese Anfrage im Forum von ICEcat stammt wohl von unserem modified eCommerce Shopsoftware franky_n. ;)
    Er hat auch schon angemerkt, daß diese Anfrage bisher unbeantwortet geblieben ist. :(

    Grüße
    Björn

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #533 am: 20. März 2011, 22:00:26
    Na dann dort im Forum anmelden und die Frage nochmal hoch schieben. ;-)

    Grüße

    Torsten

    xMerchant

    • Frisch an Board
    • Beiträge: 87
    MODUL: ICEcat Datenblätter einbinden
    Antwort #534 am: 21. März 2011, 00:36:00
    OpenIceCat wird unter der Open Content License veröffentlicht (http://icecat.de/us/menu/services/index.htm) und gemäß der OpenContent License darf man den Content speichern, verändern, kopieren, ... solange das ursprüngliche Copyright an prominenter Stelle bleibt (http://www.opencontent.org/opl.shtml).

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #535 am: 21. März 2011, 08:28:56
    http://icecat.de/us/menu/disclaimer/index.htm

    Zitat
    You as the User of the Icecat.biz information are solely responsible for the choice and usage of this information. You are not entitled to transfer, copy or otherwise multiply or distribute the Icecat.biz information. You are obliged to follow the directions of Icecat.biz with regard to the use of the information.

    Grüsse
    Sebastian

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #536 am: 21. März 2011, 09:36:00
    Ja herrlich... und eben darum bringt es nichts, wenn wir hier weiter spekulieren und erneut (ich wiederhole mich) versuchen irgendwelche Lizenzen für uns auszulegen.

    Fragt doch einfach nach und bekommt dann schwarz auf weiss ein Ja oder Nein! Alles andere interessiert hier doch nun wirklich nicht.

    Aber ich denke, ich werde mich noch weitere Male wiederholen... :hust: :whistle:

    Grüße

    Torsten

    xeron

    • Schreiberling
    • Beiträge: 497
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #537 am: 21. März 2011, 11:50:22
    Hi,

    also ich habe jetzt an ICEcat eine Anfrage bezüglich des Cache geschrieben. Melde mich, soweit ich eine Antwort habe.

    Grüße
    André

    xeron

    • Schreiberling
    • Beiträge: 497
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #538 am: 22. März 2011, 12:07:51
    Also das ist die Antwort die ich bekommen habe. Sind wir leider noch nicht weiter damit.

    Hallo,
    Falls Sie die Daten exportieren möchten, nutzen Sie bitte unsere XML Schnittstelle. Weitere Informationen über XML Daten: How can I implement Icecat XML product data?

    Viele Grüße,

    bkabel

    • Schreiberling
    • Beiträge: 341
    • Geschlecht:
    MODUL: ICEcat Datenblätter einbinden
    Antwort #539 am: 22. März 2011, 12:16:55
    Hi xeron,

    das klingt aber trotzdem soweit gut, denn ob ich jetzt nun den OpenSource "ICEcatPIM" (Product Information Manager) benutze um die Daten zu exportieren oder einen eigenen Connector, bleibt doch letztendlich egal, oder?
    Wir setzten unter die Beschreibung/ Bilder ja auch den Disclaimer/ Copyright.

    Wie denkt ihr darüber?

    Gruß Björn

    91 Antworten
    44726 Aufrufe
    10. November 2014, 21:17:07 von jenni
    7 Antworten
    5011 Aufrufe
    16. Dezember 2011, 19:36:10 von web4design
    0 Antworten
    2988 Aufrufe
    14. November 2010, 17:37:24 von nicson
    4 Antworten
    2718 Aufrufe
    04. Oktober 2013, 19:40:20 von tele