Jump to content
xt:Commerce Community Forum

[anbindung Afterbuy]


mzanier

Recommended Posts

Schnittstelle XTC RC1.x -> Afterbuy.de**

Mit dieser Schnittstelle werden Bestellungen automatisch vom Shop ins Afterbuy.de System eingespielt. (erfolgt bei jeder Bestellung).

Specials:

-Nachnamegeb?hr

-Gutschein

-Rabatt

werden als Extra Produkte an afterbuy ?bergeben.

Fehlerhafte ?bertragungen werden in der db vermerkt, und k?nnen mit einem speziellen Admin Modul erneut ?bertragen werden.

afterbuy1.gif

** Sie m?ssen bei Afterbuy eine freischaltung der XML Schnittstelle beantragen.

Dieses Modul ist f?r 25? erh?ltlich, bei Interesse Mail an [email protected] ,auf wunsch auch mit installation.

*HINWEIS*

dieses Modul ben?tigt php mit cURL Modul mit SSL unterst?tzung, was ist Curl ?

Am besten bei Hoster anfragen ob dies installiert ist, http://at.php.net/manual/en/ref.curl.php

Link to comment
Share on other sites

  • 3 months later...

Hallo

Die Schnittstelle funktioniert wirklich prima. Nur leider hat sie einen kleinen Sch?nheitsfehler. Es werden nicht die Produktoptionen mit an Afterbuy ?bergeben.

Wenn also mehrere Produkte mit gleichen Namen aber unterschiedlichen Optionen gekauft werden erscheinen diese dann auch nicht auf der Rechnung mit den Optionen. Gibt es eine M?glichkeit die Schnittstelle dementsprechend anzupassen?

Danke und Gru?

Thomas

Link to comment
Share on other sites


   while ($pDATA=xtc_db_fetch_array($p_query)) {

   // ATTRIBUTE ADDON.

   $attributes_query=xtc_db_query("SELECT

                    products_options,

                    products_options_values,

                    price_prefix,

                    options_values_price

                    FROM ".TABLE_ORDERS_PRODUCTS_ATTRIBUTES."

                    WHERE orders_products_id='".$pDATA['orders_products_id']."'");

        $attributes_model='';

        while ($attributes_data_values = xtc_db_fetch_array($attributes_query)) {

        $attributes_model .='-'.xtc_get_attributes_model($pDATA['products_id'],$attributes_data_values['products_options_values']);

        }



        $nr++;

        $artnr = (int)$pDATA['products_model'];

        $DATAstring .= "Artikelnr_" . $nr . "=" . $artnr ."&";

        $DATAstring .= "Artikelname_" . $nr . "=" . ereg_replace("&","%38",ereg_replace("\"","",ereg_replace(" ","%20",$pDATA['products_name']))) .' '.$attributes_model. "&";

        $price = ereg_replace("\.",",",$pDATA['products_price']);

        $tax = ereg_replace("\.",",",$pDATA['products_tax']);



        $DATAstring .= "ArtikelEPreis_" . $nr . "=" . $price . "&";

        $DATAstring .= "ArtikelMwst_" . $nr . "=" . $tax . "&";

        $DATAstring .= "ArtikelMenge_" . $nr . "=" . $pDATA['products_quantity'] . "&";

        $url=HTTP_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $pDATA['products_id'];

        $DATAstring .= "ArtikelLink_" . $nr . "=" . $url . "&";


        $anzahl += $pDATA['products_quantity'];

   }

Link to comment
Share on other sites

Nur dumm das ich von PHP nicht viel verstehe und damit mit diesem Code nicht

viel anfangen kann. (Wohin muss dieser und welchem ersetzt werden)

Ich hab erstmal bei Afterbuy angefragt ob es m?glich ist die Schnittstelle zu

erweitern. Gru? Thomas

Link to comment
Share on other sites

inc/_afterbuy/class.afterbuy.inc.php

das

while ($pDATA=xtc_db_fetch_array($p_query)) {

$nr++;

$artnr = $pDATA['products_model'];

$DATAstring .= "Artikelnr_" . $nr . "=" . $artnr . "&";

$DATAstring .= "Artikelname_" . $nr . "=" . ereg_replace("&","%38",ereg_replace("\"","",ereg_replace(" ","%20",$pDATA['products_name']))) . "&";

$price = ereg_replace("\.",",",$pDATA['products_price']);

$tax = ereg_replace("\.",",",$pDATA['products_tax']);

$DATAstring .= "ArtikelEPreis_" . $nr . "=" . $price . "&";

$DATAstring .= "ArtikelMwst_" . $nr . "=" . $tax . "&";

$DATAstring .= "ArtikelMenge_" . $nr . "=" . $pDATA['products_quantity'] . "&";

$url=HTTP_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $pDATA['products_id'];

$DATAstring .= "ArtikelLink_" . $nr . "=" . $url . "&";

$anzahl += $pDATA['products_quantity'];

}

durch obigegs ersetzen.

Link to comment
Share on other sites

danke f?r die schnelle antwort

habs auch gleich ausprobiert.

die artikel werden zwar ohne fehlermeldung an afterbuy ?bertragen allerdings die produktoptionen kommen trotzdem nicht mit.

nach dem produkt kommt ein " - " zeichen und danach ist schluss.

kann mir aber gut vorstellen das es hier eine begrenzung der zeichen gibt.

habe es mit kurzen produktnamen und langen versucht. doch bei beiden ist nach dem minus zeichen schluss.

gru? thomas

Link to comment
Share on other sites

Originally posted by cigam@Aug 26 2004, 09:42 AM

danke f?r die schnelle antwort

habs auch gleich ausprobiert.

die artikel werden zwar ohne fehlermeldung an afterbuy ?bertragen allerdings die produktoptionen kommen trotzdem nicht mit.

nach dem produkt kommt ein " - " zeichen und danach ist schluss.

kann mir aber gut vorstellen das es hier eine begrenzung der zeichen gibt.

habe es mit kurzen produktnamen und langen versucht. doch bei beiden ist nach dem minus zeichen schluss.

gru? thomas

Wir haben den Code installiert. Es funktioniert alles einwandfrei.

Du musst bei den Atributten "Artikelnummer" hinterlegen, da diese nach "-" ausgegeben wird und nicht der Name.

Link to comment
Share on other sites

Hallo

Ich werde es gerne noch mal versuchen. Bin f?r jeden Tip dankbar. Aber wo genau muss ich die Artikelnummer hinterlegen? Bei der Zuordnung der Optionen zum Artikel? im Feld Attribute? Wenn ja muss da die Artikelnummer vom Hauptartikel immer rein oder f?r jede Attribut eine andere?

Danke und Gru? Thomas

Link to comment
Share on other sites

das hab ich damit nicht gemeint ;) will die schnittstelle nat?rlich nicht verkaufen. ich meinte unsere k?ufer k?nnen mit der artikelnummer nichts anfangen. brauchen da schon ne n?here bezeichnung ;) aber wenn ich da auch nen richtigen namen eintragen ist das nat?rlich super. probier ich doch gleich mal aus.

danke und gru? is thomas

Link to comment
Share on other sites

  • 4 months later...

dieses Modul ben?tigt php mit cURL Modul mit SSL unterst?tzung, was ist Curl ?

Curl ist ein m?chtiges Kommandozeilen-Tool, um http-Requests mit allen m?glichen Attributen absenden zu k?nnen.

Ich vermute, in diesem Kontext wird es eingesetzt, um das html-Frontend zu Afterbuy zu bedienen.

Gr??e

Ralph

Link to comment
Share on other sites

Hallo,

die Server Info des Shops gibt mir folgendes aus:

CURL support enabled

CURL Information libcurl/7.10.3 OpenSSL/0.9.6g ipv6 zlib/1.2.1

Ist damit die SSL-Unterst?tzung gemeint die f?r die f?r die Schnittstelle ben?tigt wird, oder wird ein ein SSL Zertifikat ben?tigt mit dem der Shop gesch?tzt ist?

Gru?

Nosti

Link to comment
Share on other sites

Hallo,

h?tte da auch noch ein zwei Fragen.

Wie schaut das aus wenn ich mir die Schnittstelle f?r die Vers. 2.0 und will sp?ter auf die Vers. 3.... updaten. Bleibt das diesselbe oder muss ich wieder eine bezahlen?

Oder ist vielleicht in der Vers. 3... schon diese Schnittstelle mit integriert?

Danke.

Gru?

Link to comment
Share on other sites

  • 2 weeks later...

M?chte keinen neuen Thread aufmachen, da ich der Meinung bin,

da? hier wohl richtig bin.

Frage: Welche ?nderungen (3.0.2) sind n?tig, damit auch die Attribute

in Afterbuy mit ?bertragen werden?

Den Code:

while ($pDATA=xtc_db_fetch_array($p_query)) ?{

 ? ? ? ? ? ? ? ?$nr++;

 ? ? ? ? ? ? ? ?$artnr = $pDATA['products_model'];

 ? ? ? ? ? ? ? ?$DATAstring .= "Artikelnr_" . $nr . "=" . $artnr . "&";

 ? ? ? ? ? ? ? ?$DATAstring .= "Artikelname_" . $nr . "=" . ereg_replace("&","%38",ereg_replace("\"","",ereg_replace(" ","%20",$pDATA['products_name']))) . "&";

 ? ? ? ? ? ? ? ?$price = ereg_replace("\.",",",$pDATA['products_price']);

 ? ? ? ? ? ? ? ?$tax = ereg_replace("\.",",",$pDATA['products_tax']);



 ? ? ? ? ? ? ? ?$DATAstring .= "ArtikelEPreis_" . $nr . "=" . $price . "&";

 ? ? ? ? ? ? ? ?$DATAstring .= "ArtikelMwst_" . $nr . "=" . $tax . "&";

 ? ? ? ? ? ? ? ?$DATAstring .= "ArtikelMenge_" . $nr . "=" . $pDATA['products_quantity'] . "&";

 ? ? ? ? ? ? ? ?$url=HTTP_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $pDATA['products_id'];

 ? ? ? ? ? ? ? ?$DATAstring .= "ArtikelLink_" . $nr . "=" . $url . "&";


 ? ? ? ? ? ? ? ?$anzahl += $pDATA['products_quantity'];

 ? ?}
hatte ich durch diesen ersetzt:
while ($pDATA=xtc_db_fetch_array($p_query)) ?{

 ? ? // ATTRIBUTE ADDON.

 ? ? $attributes_query=xtc_db_query("SELECT

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? products_options,

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? products_options_values,

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? price_prefix,

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? options_values_price

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? FROM ".TABLE_ORDERS_PRODUCTS_ATTRIBUTES."

 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? WHERE orders_products_id='".$pDATA['orders_products_id']."'");

 ? ? ? ? ? ? ? $attributes_model='';

 ? ? ? ? ? ? ? while ($attributes_data_values = xtc_db_fetch_array($attributes_query)) {

 ? ? ? ? ? ? ? $attributes_model .='-'.xtc_get_attributes_model($pDATA['products_id'],$attributes_data_values['products_options_values']);

 ? ? ? ? ? ? ? }



 ? ? ? ? ? ? ? $nr++;

 ? ? ? ? ? ? ? $artnr = (int)$pDATA['products_model'];

 ? ? ? ? ? ? ? $DATAstring .= "Artikelnr_" . $nr . "=" . $artnr ."&";

 ? ? ? ? ? ? ? $DATAstring .= "Artikelname_" . $nr . "=" . ereg_replace("&","%38",ereg_replace("\"","",ereg_replace(" ","%20",$pDATA['products_name']))) .' '.$attributes_model. "&";

 ? ? ? ? ? ? ? $price = ereg_replace("\.",",",$pDATA['products_price']);

 ? ? ? ? ? ? ? $tax = ereg_replace("\.",",",$pDATA['products_tax']);



 ? ? ? ? ? ? ? $DATAstring .= "ArtikelEPreis_" . $nr . "=" . $price . "&";

 ? ? ? ? ? ? ? $DATAstring .= "ArtikelMwst_" . $nr . "=" . $tax . "&";

 ? ? ? ? ? ? ? $DATAstring .= "ArtikelMenge_" . $nr . "=" . $pDATA['products_quantity'] . "&";

 ? ? ? ? ? ? ? $url=HTTP_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $pDATA['products_id'];

 ? ? ? ? ? ? ? $DATAstring .= "ArtikelLink_" . $nr . "=" . $url . "&";


 ? ? ? ? ? ? ? $anzahl += $pDATA['products_quantity'];

 ? ?}
Daraufhin bekam ich die Fehlermeldung:
Fatal error: Call to undefined function: xtc_get_attributes_model() in /homepages/40/d114710167/htdocs/inc/_afterbuy/class.afterbuy.inc.php on line 153 

Bitte freundlichst um Hilfe.

L.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...