Jump to content
xt:Commerce Community Forum

Search the Community

Showing results for tags 'gleicher'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • xt:Commerce - Professionelle eCommerce Shopsoftware
    • Fragen zur Software
    • xt:Commerce Plugins
    • xt:Commerce 4 Sprachen
    • xt:Commerce Online Handbuch
    • Häufige Fragen (FAQ)
    • Fragen zur Software (Pre Sale)
    • Anleitungen - Patches - Downloads
  • xt:Commerce Office - Shop & Warenwirtschaft
    • Allgemeine Fragen
  • xt:Commerce Allgemein
  • xt:Commerce 3 Shopsoftware Community Area (nur Lesen)
    • Allgemeine Diskussionen
    • Installation und Konfiguration
    • Shopbereich
    • Admininterface
    • Modul Entwicklung
    • Template System
    • xt:Commerce Schnittstellen ERP Systeme
    • PHP & MysQL Forum
    • HTML & CSS

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


ICQ


Yahoo


Jabber


Skype


Location


Interests


Biografie


Wohnort


Interessen


Beruf

Found 10 results

  1. Hallo, ich bin mit einer VEYTON-Installation nach einem Test umgezogen auf die Live-Site, die auf dem gleichen Server, aber einem anderen Pfad liegt. Da sich am DB-Zugriff nichts ändert, waren keine Änderungen in /conf/*.php notwendig - zumindest dachte ich so. Leider kriege ich aber nun beim Aufruf des Backends eines Fehlermeldung: Und das wirklich Verwirrende dabei ist: "web45" ist Teil der alten Pfadangabe! Ich finde aber (mit GREP) keine Dateien in der neuen Struktur, die auf web45 verweisen und frage mich, woher er das dann zieht. Gibt es irgendwo in der Datenbank Pfadangaben? Die Tabelle "adodb_logsql" habe ich geleert und habe auch etliche Beiträge zum Thema "Umzug" im Forum gesucht, gefunden und gelesen, aber keine Lösung gefunden...
  2. Hallo, ich würde gerne im categorie_listing.html die Kategorien der aktuellen Ebene anzeigen. Standard werden die links der unteren Kategorien angezeigt. Beispiel: navigation: Hauptkat1 (level1) Hauptkat2 (level1) -sub-kat1 (level2) -sub-kat2 (level2) --sub-sub-kat1 (level3) --sub-sub-kat2 (level3) wenn ich mich in sub-sub-kat2 (level3) befinde will ich die weiteren kategorien (level3) in der categorie_listing anzeigen. leider hab ich von dort keinen zugrif auf die kategorien
  3. Hallo Leute, ich hab grad vor kurzem XTC 3.04 SP2.1 (XTCModified) installiert und bräuchte mal Unterstützung von den Spezis, weil ich da so was Spezielleres machen möchte, aber leider nicht weiterkomme, weil ich mich mit php /MySQL/Smarty -Programmierung nicht sonderlich gut auskenne. Und zwar folgendes: Ich habe in dem Shop mehrere Artikel angelegt mit genau gleicher Artikelnummer, aber unterschiedlichen Artikelnamen. Beispiel zum besseren Verständnis: Verzeichnisname Artikel-Nr Artikelname Staubsauger Modell 3 1200 Staubsauger Modell 3 - Ultrafeiner Filter (Typ1) Staubsauger Modell 2 1200 Staubsauger Modell 2 - Ultrafeiner Filter (Typ1) Staubsauger Modell 1 1200 Staubsauger Modell 1 - Ultrafeiner Filter (Typ1) Nach Filter Nummer 1200 Ultrafeiner Staubsauger Filter Typ 1 Jetzt hätte ich gerne, dass mir beim Artikel "Ultrafeiner Staubsauger Filter Typ 1" in der Artikelbeschreibung (product_info_v2.html speziell angepaßt) automatisch alle Kategorienamen, wo die Artikel mit gleicher Artikelnummer drin liegen, alpabetisch aufgelistet werden. Also so: Dieser Filter paßt in folgende Modelle: Staubsauger Modell 1 Staubsauger Modell 2 Staubsauger Modell 3 (Es wäre dabei zwar nicht schlimm, wenn "Nach Filter Nummer" dabei auch mit aufgeführt würde, aber ohne wäre natürlich schon besser) Und genial wäre es natürlich, wenn die auch noch mit Hyperlink zu den Artikeln gelistet würden. Ich denke mal, dass da erstmal irgendwie ermittelt werden müsste, wie oft der Artikel mit identischer Artikenummer in der Datenbank vorhanden ist und dann das irgendwie in einem array gespeichert werden müßte und mit einer Schleife wieder ausgegeben werden muß. So vom Grundprinzip her stelle ich mir das mal so vor, hab aber einfach zu wenig Kentnisse, wie ich das programmiertechnisch umsetzen muß - sofern das überhaupt geht. Würde mich wirklich sehr freuen, wenn mir da einer weiterhelfen könnte. Viele Grüße Elliot
  4. Hallo, gibt es eine Möglichkeit, auf den Verwendungszweck bei den Zahlungsmodulen Einfluss zu nehmen. Es soll bei allen Zahlungsarten "BEST.NR. - NAME" als Verwendungszweck auftauchen? Grüße Ivan
  5. Mir liegen 2 Module vor. Modul Merkzettel und Modul Zubehör und natürlich xt-commerce in der Verson 3.04SP2.1. Egal wie rum ich es versuche, zuerst dieses oder jenes, ich komme nicht drauf, wie der Code angepasst werden muss. Es geht um die Datei cart_actions.php, hier der Code des Originals: <?php /* ----------------------------------------------------------------------------------------- $Id: cart_actions.php 1298 2005-10-09 13:14:44Z mz $ XT-Commerce - community made shopping http://www.xt-commerce.com Copyright (c) 2003 XT-Commerce ----------------------------------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(application_top.php,v 1.273 2003/05/19); www.oscommerce.com (c) 2003 nextcommerce (application_top.php,v 1.54 2003/08/25); www.nextcommerce.org Released under the GNU General Public License ----------------------------------------------------------------------------------------- Third Party contribution: Add A Quickie v1.0 Autor Harald Ponce de Leon Credit Class/Gift Vouchers/Discount Coupons (Version 5.10) http://www.oscommerce.com/community/contributions,282 Copyright (c) Strider | [email protected] Copyright (c Nick Stanko of UkiDev.com, [email protected] Copyright (c) Andre [email protected] Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org Released under the GNU General Public License ---------------------------------------------------------------------------------------*/ // Shopping cart actions if (isset ($_GET['action'])) { // redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled if ($session_started == false) { xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE)); } if (DISPLAY_CART == 'true') { $goto = FILENAME_SHOPPING_CART; $parameters = array ( 'action', 'cPath', 'products_id', 'pid' ); } else { $goto = basename($PHP_SELF); if ($_GET['action'] == 'buy_now') { $parameters = array ( 'action', 'pid', 'products_id', 'BUYproducts_id' ); } else { $parameters = array ( 'action', 'pid', 'BUYproducts_id', 'info' ); } } switch ($_GET['action']) { // customer wants to update the product quantity in their shopping cart case 'update_product' : if (is_object($econda)) $econda->_emptyCart(); for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i++) { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array ()))) { $_SESSION['cart']->remove($_POST['products_id'][$i]); if (is_object($econda)) $econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]); } else { if ($_POST['cart_quantity'][$i] > MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i] = MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; if (is_object($econda)) { $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i])); $econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity); } $_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters))); break; // customer adds a product from the products page case 'add_product' : if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) { if ($_POST['products_qty'] > MAX_PRODUCTS_QTY) $_POST['products_qty'] = MAX_PRODUCTS_QTY; if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])); $econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity); } $_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']); } xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters))); break; case 'check_gift' : require_once (DIR_FS_INC . 'xtc_collect_posts.inc.php'); xtc_collect_posts(); break; // customer wants to add a quickie to the cart (called from a box) case 'add_a_quickie' : $quicky = addslashes($_POST['quickie']); if (GROUP_CHECK == 'true') { $group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 "; } $quickie_query = xtc_db_query("select products_fsk18, products_id from " . TABLE_PRODUCTS . " where products_model = '" . $quicky . "' " . "AND products_status = '1' " . $group_check); if (!xtc_db_num_rows($quickie_query)) { if (GROUP_CHECK == 'true') { $group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 "; } $quickie_query = xtc_db_query("select products_fsk18, products_id from " . TABLE_PRODUCTS . " where products_model LIKE '%" . $quicky . "%' " . "AND products_status = '1' " . $group_check); } if (xtc_db_num_rows($quickie_query) != 1) { xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL')); } $quickie = xtc_db_fetch_array($quickie_query); if (xtc_has_product_attributes($quickie['products_id'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } else { if ($quickie['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $quickie['products_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } if ($_POST['quickie'] != '') { $act_qty = $_SESSION['cart']->get_quantity(xtc_get_uprid($quickie['products_id'], 1)); if ($act_qty > MAX_PRODUCTS_QTY) $act_qty = MAX_PRODUCTS_QTY - 1; $_SESSION['cart']->add_cart($quickie['products_id'], $act_qty +1, 1); xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array ( 'action' )), 'NONSSL')); } else { xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL')); } } break; // performed by the 'buy now' button in product listings and review page case 'buy_now' : if (isset ($_GET['BUYproducts_id'])) { // check permission to view product $permission_query = xtc_db_query("SELECT group_permission_" . $_SESSION['customers_status']['customers_status_id'] . " as customer_group, products_fsk18 from " . TABLE_PRODUCTS . " where products_id='" . (int) $_GET['BUYproducts_id'] . "'"); $permission = xtc_db_fetch_array($permission_query); // check for FSK18 if ($permission['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL')); } if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $permission['products_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL')); } if (GROUP_CHECK == 'true') { if ($permission['customer_group'] != '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'])); } } if (xtc_has_product_attributes($_GET['BUYproducts_id'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'])); } else { if (isset ($_SESSION['cart'])) { if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']); $econda->_addProduct($_GET['BUYproducts_id'], $old_quantity +1, $old_quantity); } $_SESSION['cart']->add_cart((int) $_GET['BUYproducts_id'], $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']) + 1); } else { xtc_redirect(xtc_href_link(FILENAME_DEFAULT)); } } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array ( 'action', 'BUYproducts_id' )))); break; case 'cust_order' : if (isset ($_SESSION['customer_id']) && isset ($_GET['pid'])) { if (xtc_has_product_attributes((int) $_GET['pid'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['pid'])); } else { $_SESSION['cart']->add_cart((int) $_GET['pid'], $_SESSION['cart']->get_quantity((int) $_GET['pid']) + 1); } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters))); break; } } ?> Der Stand ist nun folgender, ich habe zuerst das Modul Merkzettel installiert nach folgender Anleitung für die cart_actions.php: shop/includes/cart_actions.php das suchen : switch ($_GET['action']) { // customer wants to update the product quantity in their shopping cart case 'update_product' : for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array ()))) { $_SESSION['cart']->remove($_POST['products_id'][$i]); } else { if ($_POST['cart_quantity'][$i] > MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i] = MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; $_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } } hiermit ersetzen : switch ($_GET['action']) {// customer wants to update the product quantity in their shopping cart case 'update_product' : if (is_object($econda)) $econda->_emptyCart(); for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) { if($_POST['submit_target'] == 'wishlist') //WISHLIST ############ { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) { $_SESSION['wishList']->remove($_POST['products_id'][$i]); } else { if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; $_SESSION['wishList']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } $goto = 'wish_list.php'; if (is_object($econda)) $econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]); } else //CART ############ { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) { $_SESSION['cart']->remove($_POST['products_id'][$i]); } else { if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; $_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } if (is_object($econda)) { $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i])); $econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity); } //END wishlist/cart ############ } } --------------------------- das suchen : $_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']); hiermit ersetzen : if($_POST['submit_target'] == 'wishlist') { $_SESSION['wishList']->add_cart((int)$_POST['products_id'], $_SESSION['wishList']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']); $goto = 'wish_list.php'; } else { $_SESSION['cart']->add_cart((int)$_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']); } *** Die neue cart_actions sieht danach also so aus: <?php /* ----------------------------------------------------------------------------------------- $Id: cart_actions.php 1298 2005-10-09 13:14:44Z mz $ XT-Commerce - community made shopping http://www.xt-commerce.com Copyright (c) 2003 XT-Commerce ----------------------------------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(application_top.php,v 1.273 2003/05/19); www.oscommerce.com (c) 2003 nextcommerce (application_top.php,v 1.54 2003/08/25); www.nextcommerce.org Released under the GNU General Public License ----------------------------------------------------------------------------------------- Third Party contribution: Add A Quickie v1.0 Autor Harald Ponce de Leon Credit Class/Gift Vouchers/Discount Coupons (Version 5.10) http://www.oscommerce.com/community/contributions,282 Copyright (c) Strider | [email protected] Copyright (c Nick Stanko of UkiDev.com, [email protected] Copyright (c) Andre [email protected] Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org Released under the GNU General Public License ---------------------------------------------------------------------------------------*/ // Shopping cart actions if (isset ($_GET['action'])) { // redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled if ($session_started == false) { xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE)); } if (DISPLAY_CART == 'true') { $goto = FILENAME_SHOPPING_CART; $parameters = array ( 'action', 'cPath', 'products_id', 'pid' ); } else { $goto = basename($PHP_SELF); if ($_GET['action'] == 'buy_now') { $parameters = array ( 'action', 'pid', 'products_id', 'BUYproducts_id' ); } else { $parameters = array ( 'action', 'pid', 'BUYproducts_id', 'info' ); } } switch ($_GET['action']) {// customer wants to update the product quantity in their shopping cart case 'update_product' : if (is_object($econda)) $econda->_emptyCart(); for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) { if($_POST['submit_target'] == 'wishlist') //WISHLIST ############ { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) { $_SESSION['wishList']->remove($_POST['products_id'][$i]); } else { if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; $_SESSION['wishList']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } $goto = 'wish_list.php'; if (is_object($econda)) $econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]); } else //CART ############ { if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) { $_SESSION['cart']->remove($_POST['products_id'][$i]); } else { if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY; $attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : ''; $_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false); } if (is_object($econda)) { $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i])); $econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity); } //END wishlist/cart ############ } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters))); break; // customer adds a product from the products page case 'add_product' : if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) { if ($_POST['products_qty'] > MAX_PRODUCTS_QTY) $_POST['products_qty'] = MAX_PRODUCTS_QTY; if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])); $econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity); } if($_POST['submit_target'] == 'wishlist') { $_SESSION['wishList']->add_cart((int)$_POST['products_id'], $_SESSION['wishList']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']); $goto = 'wish_list.php'; } else { $_SESSION['cart']->add_cart((int)$_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']); } } xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters))); break; case 'check_gift' : require_once (DIR_FS_INC . 'xtc_collect_posts.inc.php'); xtc_collect_posts(); break; // customer wants to add a quickie to the cart (called from a box) case 'add_a_quickie' : $quicky = addslashes($_POST['quickie']); if (GROUP_CHECK == 'true') { $group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 "; } $quickie_query = xtc_db_query("select products_fsk18, products_id from " . TABLE_PRODUCTS . " where products_model = '" . $quicky . "' " . "AND products_status = '1' " . $group_check); if (!xtc_db_num_rows($quickie_query)) { if (GROUP_CHECK == 'true') { $group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 "; } $quickie_query = xtc_db_query("select products_fsk18, products_id from " . TABLE_PRODUCTS . " where products_model LIKE '%" . $quicky . "%' " . "AND products_status = '1' " . $group_check); } if (xtc_db_num_rows($quickie_query) != 1) { xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL')); } $quickie = xtc_db_fetch_array($quickie_query); if (xtc_has_product_attributes($quickie['products_id'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } else { if ($quickie['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $quickie['products_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL')); } if ($_POST['quickie'] != '') { $act_qty = $_SESSION['cart']->get_quantity(xtc_get_uprid($quickie['products_id'], 1)); if ($act_qty > MAX_PRODUCTS_QTY) $act_qty = MAX_PRODUCTS_QTY - 1; $_SESSION['cart']->add_cart($quickie['products_id'], $act_qty +1, 1); xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array ( 'action' )), 'NONSSL')); } else { xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL')); } } break; // performed by the 'buy now' button in product listings and review page case 'buy_now' : if (isset ($_GET['BUYproducts_id'])) { // check permission to view product $permission_query = xtc_db_query("SELECT group_permission_" . $_SESSION['customers_status']['customers_status_id'] . " as customer_group, products_fsk18 from " . TABLE_PRODUCTS . " where products_id='" . (int) $_GET['BUYproducts_id'] . "'"); $permission = xtc_db_fetch_array($permission_query); // check for FSK18 if ($permission['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL')); } if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $permission['products_fsk18'] == '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL')); } if (GROUP_CHECK == 'true') { if ($permission['customer_group'] != '1') { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'])); } } if (xtc_has_product_attributes($_GET['BUYproducts_id'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'])); } else { if (isset ($_SESSION['cart'])) { if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']); $econda->_addProduct($_GET['BUYproducts_id'], $old_quantity +1, $old_quantity); } $_SESSION['cart']->add_cart((int) $_GET['BUYproducts_id'], $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']) + 1); } else { xtc_redirect(xtc_href_link(FILENAME_DEFAULT)); } } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array ( 'action', 'BUYproducts_id' )))); break; case 'cust_order' : if (isset ($_SESSION['customer_id']) && isset ($_GET['pid'])) { if (xtc_has_product_attributes((int) $_GET['pid'])) { xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['pid'])); } else { $_SESSION['cart']->add_cart((int) $_GET['pid'], $_SESSION['cart']->get_quantity((int) $_GET['pid']) + 1); } } xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters))); break; } } ?> Jetzt möchte ich die Veränderungen für das Modul Zubehör einbauen und habe ein Problem, denn der Code, welcher verändert werden soll, ist nicht mehr so wie er war. Hier die Anleitung für die Datei cart_actions.php des Moduls Zubehör: // Suchen nach // ------------------------------------------------------------------------------------------------- case 'add_product' : if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) { if ($_POST['products_qty'] > MAX_PRODUCTS_QTY) $_POST['products_qty'] = MAX_PRODUCTS_QTY; if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])); $econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity); } $_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']); } xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters))); break; // ------------------------------------------------------------------------------------------------- // Ersetzen durch // ------------------------------------------------------------------------------------------------- case 'add_product' : if (isset($_POST['products_id'])) { if ($_POST['products_qty'] > MAX_PRODUCTS_QTY) $_POST['products_qty'] = MAX_PRODUCTS_QTY; if (is_object($econda)) { $econda->_emptyCart(); $old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])); $econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity); } $pids = count($_POST['products_id']); for($i=0; $i<$pids; $i++){ $_SESSION['cart']->add_cart((int)$_POST['products_id'][$i], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']); } } xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters))); break; // ------------------------------------------------------------------------------------------------- Wie kann man das Problem lösen, an meinen Versuchen bin ich gescheitert. mfg 0etzi
  6. Ich plane den Umstieg von Shoppilot Profi auf xtCommerce weil mir meine alte Shopsoftware nicht mehr alle gewünschten Möglichkeiten bietet (Entwicklung wurde bereits eingestellt). Da ich aber schon einige gut plazierte Seiten (ich bin mit der Plazierung zufrieden, keine Nr1 von 4000000 aber unter den ersten 10-20 bei 1000000) im Google habe möchte ich nach Möglichkeit diese natürlich soweit behalten bzw. die Plazierung und mit xtCommerce nicht wieder bei Null anfangen. Das geht aber ja nicht weil die neuen Seiten bei xtCommerce ja anders heissen und anderen Aufbau haben und somit Google ja bald wenn ich die alten Seiten von der Domain gelöscht habe diese aus dem Index schmeisst. Ich habe überhaupt keine Idee wie ich am besten von meiner alten Software auf xtCommerce umsteige auf dem gleichen Domainnamen ohne alle Plazierungen zu verlieren und somit quasi wieder bei Null anfange. Es ist mir schon klar das es erstmal bei Plazierungen wieder ans optimieren geht, aber ist es denn nicht irgendwie möglich noch lange Zeit über die alten Seiten gefunden zu werden und parallel dazu die neuen xtCommerceseiten zu optimieren sodas möglichst wenig 'Ausfallzeit' bei Google entsteht das Kunden den Shop finden. Vielleicht die wichtigsten alten Seiten stehen lassen und xtcommerce parallel unter einem anderen Unterverzeichniss installieren ???? Vor diesem Problem haben doch bestimmt auch schon andere xtCommerce Nutzer gestanden. Bitte sagt mal wie Ihr es gemacht habt bzw. wie man es am besten machen sollte. Gruss
  7. Hallo, hat jemand eine Idee wie man für eine Kundengruppe immer den gleichen Zugang oder wenigstens immer das gleiche Passwort vergeben kann. Ich brauche einen generelles Login um Kunden welche vorab den Zugang zu einer Kundengruppe bekommen sich einloggen können und dann spezielle Preise angezeigt bekommen. Gruß Andre
  8. Hallo, nachdem mir soeben sehr schnell geholfen wurde, habe ich noch eine weitere kleine Frage. Bei mir haben die Boxen, die im Content Manager zur Auswahl vorgegeben sind jeweils die gleiche Überschrift. Ich habe in der Datei lang/german/lang_german.conf die Stelle gefunden, an der diese Überschriften gesteuert werden: In meinem Shop werden jedoch beide Boxen mit der Überschrift die in heading_content eingetragen ist versehen. Irgend eine Idee? Nachtrag: es lag daran, dass ich das YAML-XT-Template benutze und dort in der Datei /templates/YAML-xtc-1.4.0/boxes/box_information.html statt <h4>{#heading_infobox#}</h4> folgendes zu finden war: <h4>{#heading_content#}</h4> . Kleiner Fehler, große Wirkung!
  9. Hallo zusammen, Zur zeit arbeite ich an meinem ersten xt Shop, und bin deshalb schon vor so manchem Problem gestanden, aber dieses verwirrt mich etwas mehr als die vorherigen: In dem Shop gibt es Artikel, die jedes mehrere Merkmale haben, diese wiederum mehrere Optionen (Attribute klarerweise). z.B.: Artikel A, Größe 20cm & 30 cm Das Problem ist, wenn ich Artikel A mit 20 cm in den Warenkorb lege, und danach noch einmal mit 30 cm, wird der bereits im Warenkorb befindliche Artikel mit der Option 20cm, mit der Option 30 cm überschrieben, anstatt den Artikel noch einmal einzufügen. Nun soll der Artikel aber in beiden Größen bestellbar sein, ohne das eine bereits ausgewählte Konfiguration überschrieben wird. Ich hab bereits einen Shop gesehen in dem Das geht, wo man von ein und den selben Ball, zwei verschiedene Farben bestellen kann, ohne das sich die Gegenseitig im Warenkorb überschreiben. Nun frage ich mich, ob dies ein Bug ist, oder einfach nur eine falsche Einstellung. Woran könnte das liegen? (verwendet wird xt 3.0.4 SP2.1)
  10. In unserem Shop werden Textilien angeboten. Nun aber wenn der Kunde ein Artikel in verschiedenen Größen braucht, muss dies umständlich abgewickelt werden . Gäbe es vielleicht die Möglichkeit die Artikelmerkmale (Größe und oder Farbe) so darzustellen, dass der Kunde die verschiedenen Größen in einem Bestellvorgang angeben kann, und dass der Artikel erst dann in den Warenkorb wandert ?? wie z. B. XS 3 M 6 L 5 Gesamt 14 Gesamtpreis müsste noch nicht mal hier erscheinen, würde reichen wenn es im Warenkorb erscheint. Gruß Jeannie
×
  • Create New...