problema con i prodotti
Moderatore: mod Generali
problema con i prodotti
Ciao a tutti, ho un problemetto sul mio sio... ovvero, ogni volta che viene esaurito un prodotto, il prodotto si disattiva, ovvero non compare più nel catalogo.
Come faccio a fare in modo che rimanga attivo nonostante un cliente acquisti tutta l'intera scorta disponibile?
In attesa di un vostro aiuto.
Ciao e grazie.
Ruggero
Come faccio a fare in modo che rimanga attivo nonostante un cliente acquisti tutta l'intera scorta disponibile?
In attesa di un vostro aiuto.
Ciao e grazie.
Ruggero
Dr.Ock
Re: problema con i prodotti
Non mi pare una funzione standard di osC.dr_ock ha scritto:Ciao a tutti, ho un problemetto sul mio sio... ovvero, ogni volta che viene esaurito un prodotto, il prodotto si disattiva, ovvero non compare più nel catalogo.
Come faccio a fare in modo che rimanga attivo nonostante un cliente acquisti tutta l'intera scorta disponibile?
In attesa di un vostro aiuto.
Ciao e grazie.
Ruggero
Guarda nel file checkout_process.php se hai del codice aggiuntivo che disattiva il prodotto o, nel dubbio, posta qui tutto il file.
Saluti
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php
Ciao Marcus,
qui di seguito ti copio il codice sorgente della pagina checkout_process.php
Un'ultima cosa... ti ricordi di quella contribution che mi dovevi sviluppare per il pagamento tramite Carta di Credito?
Ci siamo anche sentiti per telefono, mi avevi detto che per la metà di giugno saresti riuscito a farmela....
Il cliente ultimamente mi sta un po "Stressando"
In attesa di tue doppie notizie.
Ciao e Grazie
Ruggero[/code]
qui di seguito ti copio il codice sorgente della pagina checkout_process.php
Codice: Seleziona tutto
<?php
/*
$Id: checkout_process.php,v 1.128 2003/05/28 18:00:29 hpdl Exp $
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2003 osCommerce
Released under the GNU General Public License
*/
include('includes/application_top.php');
// if the customer is not logged on, redirect them to the login page
if (!tep_session_is_registered('customer_id')) {
$navigation->set_snapshot(array('mode' => 'SSL', 'page' => FILENAME_CHECKOUT_PAYMENT));
tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL'));
}
if (!tep_session_is_registered('sendto')) {
tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));
}
if ( (tep_not_null(MODULE_PAYMENT_INSTALLED)) && (!tep_session_is_registered('payment')) ) {
tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));
}
// avoid hack attempts during the checkout procedure by checking the internal cartID
if (isset($cart->cartID) && tep_session_is_registered('cartID')) {
if ($cart->cartID != $cartID) {
tep_redirect(tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
}
}
include(DIR_WS_LANGUAGES . $language . '/' . FILENAME_CHECKOUT_PROCESS);
// load selected payment module
require(DIR_WS_CLASSES . 'payment.php');
$payment_modules = new payment($payment);
// load the selected shipping module
require(DIR_WS_CLASSES . 'shipping.php');
$shipping_modules = new shipping($shipping);
require(DIR_WS_CLASSES . 'order.php');
$order = new order;
// load the before_process function from the payment modules
$payment_modules->before_process();
require(DIR_WS_CLASSES . 'order_total.php');
$order_total_modules = new order_total;
$order_totals = $order_total_modules->process();
$sql_data_array = array('customers_id' => $customer_id,
'customers_name' => $order->customer['firstname'] . ' ' . $order->customer['lastname'],
'customers_company' => $order->customer['company'],
'customers_street_address' => $order->customer['street_address'],
'customers_suburb' => $order->customer['suburb'],
'customers_city' => $order->customer['city'],
'customers_postcode' => $order->customer['postcode'],
'customers_state' => $order->customer['state'],
'customers_country' => $order->customer['country']['title'],
'customers_telephone' => $order->customer['telephone'],
'customers_email_address' => $order->customer['email_address'],
'customers_address_format_id' => $order->customer['format_id'],
'delivery_name' => $order->delivery['firstname'] . ' ' . $order->delivery['lastname'],
'delivery_company' => $order->delivery['company'],
//PIVACF start
'billing_piva' => $order->billing['piva'],
'billing_cf' => $order->billing['cf'],
//PIVACF end
'delivery_street_address' => $order->delivery['street_address'],
'delivery_suburb' => $order->delivery['suburb'],
'delivery_city' => $order->delivery['city'],
'delivery_postcode' => $order->delivery['postcode'],
'delivery_state' => $order->delivery['state'],
'delivery_country' => $order->delivery['country']['title'],
'delivery_address_format_id' => $order->delivery['format_id'],
'billing_name' => $order->billing['firstname'] . ' ' . $order->billing['lastname'],
'billing_company' => $order->billing['company'],
'billing_street_address' => $order->billing['street_address'],
'billing_suburb' => $order->billing['suburb'],
'billing_city' => $order->billing['city'],
'billing_postcode' => $order->billing['postcode'],
'billing_state' => $order->billing['state'],
'billing_country' => $order->billing['country']['title'],
'billing_address_format_id' => $order->billing['format_id'],
'payment_method' => $order->info['payment_method'],
'shipping_module' => $shipping['id'],
'cc_type' => $order->info['cc_type'],
'cc_owner' => $order->info['cc_owner'],
'cc_number' => $order->info['cc_number'],
'cc_expires' => $order->info['cc_expires'],
'date_purchased' => 'now()',
'orders_status' => $order->info['order_status'],
'currency' => $order->info['currency'],
'currency_value' => $order->info['currency_value']);
tep_db_perform(TABLE_ORDERS, $sql_data_array);
$insert_id = tep_db_insert_id();
for ($i=0, $n=sizeof($order_totals); $i<$n; $i++) {
$sql_data_array = array('orders_id' => $insert_id,
'title' => $order_totals[$i]['title'],
'text' => $order_totals[$i]['text'],
'value' => $order_totals[$i]['value'],
'class' => $order_totals[$i]['code'],
'sort_order' => $order_totals[$i]['sort_order']);
tep_db_perform(TABLE_ORDERS_TOTAL, $sql_data_array);
}
$customer_notification = (SEND_EMAILS == 'true') ? '1' : '0';
$sql_data_array = array('orders_id' => $insert_id,
'orders_status_id' => $order->info['order_status'],
'date_added' => 'now()',
'customer_notified' => $customer_notification,
'comments' => $order->info['comments']);
tep_db_perform(TABLE_ORDERS_STATUS_HISTORY, $sql_data_array);
//kgt - discount coupons
if( tep_session_is_registered( 'coupon' ) && is_object( $order->coupon ) ) {
$sql_data_array = array( 'coupons_id' => $order->coupon->coupon['coupons_id'],
'orders_id' => $insert_id );
tep_db_perform( TABLE_DISCOUNT_COUPONS_TO_ORDERS, $sql_data_array );
}
//end kgt - discount coupons
// initialized for the email confirmation
$products_ordered = '';
$subtotal = 0;
$total_tax = 0;
for ($i=0, $n=sizeof($order->products); $i<$n; $i++) {
// Stock Update - Joao Correia
if (STOCK_LIMITED == 'true') {
if (DOWNLOAD_ENABLED == 'true') {
$stock_query_raw = "SELECT products_quantity, pad.products_attributes_filename
FROM " . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_PRODUCTS_ATTRIBUTES . " pa
ON p.products_id=pa.products_id
LEFT JOIN " . TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
ON pa.products_attributes_id=pad.products_attributes_id
WHERE p.products_id = '" . tep_get_prid($order->products[$i]['id']) . "'";
// Will work with only one option for downloadable products
// otherwise, we have to build the query dynamically with a loop
$products_attributes = $order->products[$i]['attributes'];
if (is_array($products_attributes)) {
$stock_query_raw .= " AND pa.options_id = '" . $products_attributes[0]['option_id'] . "' AND pa.options_values_id = '" . $products_attributes[0]['value_id'] . "'";
}
$stock_query = tep_db_query($stock_query_raw);
} else {
$stock_query = tep_db_query("select products_quantity from " . TABLE_PRODUCTS . " where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
if (tep_db_num_rows($stock_query) > 0) {
$stock_values = tep_db_fetch_array($stock_query);
// do not decrement quantities if products_attributes_filename exists
if ((DOWNLOAD_ENABLED != 'true') || (!$stock_values['products_attributes_filename'])) {
$stock_left = $stock_values['products_quantity'] - $order->products[$i]['qty'];
} else {
$stock_left = $stock_values['products_quantity'];
}
tep_db_query("update " . TABLE_PRODUCTS . " set products_quantity = '" . $stock_left . "' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'false') ) {
tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
}
}
// Update products_ordered (for bestsellers list)
tep_db_query("update " . TABLE_PRODUCTS . " set products_ordered = products_ordered + " . sprintf('%d', $order->products[$i]['qty']) . " where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
$sql_data_array = array('orders_id' => $insert_id,
'products_id' => tep_get_prid($order->products[$i]['id']),
'products_model' => $order->products[$i]['model'],
'products_name' => $order->products[$i]['name'],
'products_price' => $order->products[$i]['price'],
'final_price' => $order->products[$i]['final_price'],
'products_tax' => $order->products[$i]['tax'],
'products_quantity' => $order->products[$i]['qty']);
tep_db_perform(TABLE_ORDERS_PRODUCTS, $sql_data_array);
$order_products_id = tep_db_insert_id();
//------insert customer choosen option to order--------
$attributes_exist = '0';
$products_ordered_attributes = '';
if (isset($order->products[$i]['attributes'])) {
$attributes_exist = '1';
for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++) {
if (DOWNLOAD_ENABLED == 'true') {
$attributes_query = "select popt.products_options_name, poval.products_options_values_name, pa.options_values_price, pa.price_prefix, pad.products_attributes_maxdays, pad.products_attributes_maxcount , pad.products_attributes_filename
from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_OPTIONS_VALUES . " poval, " . TABLE_PRODUCTS_ATTRIBUTES . " pa
left join " . TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
on pa.products_attributes_id=pad.products_attributes_id
where pa.products_id = '" . $order->products[$i]['id'] . "'
and pa.options_id = '" . $order->products[$i]['attributes'][$j]['option_id'] . "'
and pa.options_id = popt.products_options_id
and pa.options_values_id = '" . $order->products[$i]['attributes'][$j]['value_id'] . "'
and pa.options_values_id = poval.products_options_values_id
and popt.language_id = '" . $languages_id . "'
and poval.language_id = '" . $languages_id . "'";
$attributes = tep_db_query($attributes_query);
} else {
$attributes = tep_db_query("select popt.products_options_name, poval.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_OPTIONS_VALUES . " poval, " . TABLE_PRODUCTS_ATTRIBUTES . " pa where pa.products_id = '" . $order->products[$i]['id'] . "' and pa.options_id = '" . $order->products[$i]['attributes'][$j]['option_id'] . "' and pa.options_id = popt.products_options_id and pa.options_values_id = '" . $order->products[$i]['attributes'][$j]['value_id'] . "' and pa.options_values_id = poval.products_options_values_id and popt.language_id = '" . $languages_id . "' and poval.language_id = '" . $languages_id . "'");
}
$attributes_values = tep_db_fetch_array($attributes);
$sql_data_array = array('orders_id' => $insert_id,
'orders_products_id' => $order_products_id,
'products_options' => $attributes_values['products_options_name'],
'products_options_values' => $attributes_values['products_options_values_name'],
'options_values_price' => $attributes_values['options_values_price'],
'price_prefix' => $attributes_values['price_prefix']);
tep_db_perform(TABLE_ORDERS_PRODUCTS_ATTRIBUTES, $sql_data_array);
if ((DOWNLOAD_ENABLED == 'true') && isset($attributes_values['products_attributes_filename']) && tep_not_null($attributes_values['products_attributes_filename'])) {
$sql_data_array = array('orders_id' => $insert_id,
'orders_products_id' => $order_products_id,
'orders_products_filename' => $attributes_values['products_attributes_filename'],
'download_maxdays' => $attributes_values['products_attributes_maxdays'],
'download_count' => $attributes_values['products_attributes_maxcount']);
tep_db_perform(TABLE_ORDERS_PRODUCTS_DOWNLOAD, $sql_data_array);
}
$products_ordered_attributes .= "\n\t" . $attributes_values['products_options_name'] . ' ' . $attributes_values['products_options_values_name'];
}
}
//------insert customer choosen option eof ----
$total_weight += ($order->products[$i]['qty'] * $order->products[$i]['weight']);
$total_tax += tep_calculate_tax($total_products_price, $products_tax) * $order->products[$i]['qty'];
$total_cost += $total_products_price;
//TotalB2B start
$products_ordered .= $order->products[$i]['qty'] . ' x ' . $order->products[$i]['name'] . ' (' . $order->products[$i]['model'] . ') = ' . $currencies->display_price_nodiscount($order->products[$i]['final_price'], $order->products[$i]['tax'], $order->products[$i]['qty']) . $products_ordered_attributes . "\n";
//TotalB2B end
}
// lets start with the email confirmation
$email_order = STORE_NAME . "\n" .
EMAIL_TEXT_MESSAGE . ' '. $order->customer['firstname']. ' ' . $order->customer['lastname']. "\n" .
EMAIL_SEPARATOR . "\n" .
EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n" .
EMAIL_TEXT_INVOICE_URL . ' ' . tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id, 'SSL', false) . "\n" .
EMAIL_TEXT_DATE_ORDERED . ' ' . strftime(DATE_FORMAT_LONG) . "\n\n";
if ($order->info['comments']) {
$email_order .= tep_db_output($order->info['comments']) . "\n\n";
}
$email_order .= EMAIL_TEXT_PRODUCTS . "\n" .
EMAIL_SEPARATOR . "\n" .
$products_ordered .
EMAIL_SEPARATOR . "\n";
for ($i=0, $n=sizeof($order_totals); $i<$n; $i++) {
$email_order .= strip_tags($order_totals[$i]['title']) . ' ' . strip_tags($order_totals[$i]['text']) . "\n";
}
if ($order->content_type != 'virtual') {
$email_order .= "\n" . EMAIL_TEXT_DELIVERY_ADDRESS . "\n" .
EMAIL_SEPARATOR . "\n" .
tep_address_label($customer_id, $sendto, 0, '', "\n") . "\n";
}
$email_order .= "\n" . EMAIL_TEXT_BILLING_ADDRESS . "\n" .
EMAIL_SEPARATOR . "\n" .
tep_address_label($customer_id, $billto, 0, '', "\n") . "\n\n";
if (is_object($$payment)) {
$email_order .= EMAIL_TEXT_PAYMENT_METHOD . "\n" .
EMAIL_SEPARATOR . "\n";
$payment_class = $$payment;
$email_order .= $payment_class->title . "\n\n";
if ($payment_class->email_footer) {
$email_order .= $payment_class->email_footer . "\n\n";
}
}
tep_mail($order->customer['firstname'] . ' ' . $order->customer['lastname'], $order->customer['email_address'], EMAIL_TEXT_SUBJECT, $email_order, STORE_NAME, STORE_OWNER_EMAIL_ADDRESS);
// send emails to other people
if (SEND_EXTRA_ORDER_EMAILS_TO != '') {
tep_mail('', SEND_EXTRA_ORDER_EMAILS_TO, EMAIL_TEXT_SUBJECT, $email_order, STORE_NAME, STORE_OWNER_EMAIL_ADDRESS);
}
// send email to store
tep_mail(STORE_NAME, STORE_OWNER_EMAIL_ADDRESS, EMAIL_TEXT_SUBJECT2, $email_order, STORE_NAME, STORE_OWNER_EMAIL_ADDRESS);
// load the after_process function from the payment modules
$payment_modules->after_process();
$cart->reset(true);
// unregister session variables used during checkout
tep_session_unregister('sendto');
tep_session_unregister('billto');
tep_session_unregister('shipping');
tep_session_unregister('payment');
tep_session_unregister('comments');
//kgt - discount coupons
tep_session_unregister('coupon');
//end kgt - discount coupons
tep_redirect(tep_href_link(FILENAME_CHECKOUT_SUCCESS, '', 'SSL'));
require(DIR_WS_INCLUDES . 'application_bottom.php');
?>
Ci siamo anche sentiti per telefono, mi avevi detto che per la metà di giugno saresti riuscito a farmela....
Il cliente ultimamente mi sta un po "Stressando"
In attesa di tue doppie notizie.
Ciao e Grazie
Ruggero[/code]
Dr.Ock
Ciao Ruggero,
il codice "incriminato" è questo (riga 164 circa):
Per il modulo di pagamento, ti aggiorno via email.
Ciao
Marcus
il codice "incriminato" è questo (riga 164 circa):
Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'false') ) {
tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
Ciao
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php
Allora in teoria da così:
Dovrebbe diventare così:
Giusto?
Grazie Marcus, grazie mille.
Mi raccomando non ti scordare di me!!
Aspetto tue notizie per email.
Ciao e grazie ancora
Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'false') ) {
tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'true') ) {
tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
Grazie Marcus, grazie mille.
Mi raccomando non ti scordare di me!!
Aspetto tue notizie per email.
Ciao e grazie ancora
Dr.Ock
Ma non c'è una soluzione senza intervenire nel codice?
Secondo me basta che da lato Admin vai in Stock e metti su TRUE la voce Allow Checkout.
Io adesso l'ho su FALSE proprio perchè non voglio far visualizzare i prodotti esauriti.
Secondo me basta che da lato Admin vai in Stock e metti su TRUE la voce Allow Checkout.
Io adesso l'ho su FALSE proprio perchè non voglio far visualizzare i prodotti esauriti.
Prima di postare leggetevi le FAQ: viewtopic.php?t=3259
Ciao,dr_ock ha scritto:Allora in teoria da così:Dovrebbe diventare così:Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'false') ) { tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'"); }
Giusto?Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'true') ) { tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'"); }
Grazie Marcus, grazie mille.
Mi raccomando non ti scordare di me!!
Aspetto tue notizie per email.
Ciao e grazie ancora
ho controllato e si tratta effettivamente di codice "ufficiale" cioè presente nell'ultima versione rilasciata , la RC2.
Per rispondere alla tua domanda: non devi modificare il codice ma semplicemente settare da pannello STOCK_ALLOW_CHECKOUT a True.
Saluti
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php
EsattoSpiderweb ha scritto: Secondo me basta che da lato Admin vai in Stock e metti su TRUE la voce Allow Checkout.
Saluti
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php
O c'è qualcosa che non mi torna o mi sono spiegato male.
Allora provo a spiegare nuovamente il problema...
Es: io sul sito ho disponibili 10 palline, ne comprano tutte e 10... il prodotto sparisce (disabilitandosi) dal mio catalogo on-line.
Quello che vorrei, è che il prodotto venisse visualizzato ugualmente anche se le quantità sono pari a ZERO ma vietare al tempo stesso che altri utenti possano comprarlo in quanto in magazzino non c'è disponibilità.
Vi riporto qui di eguito come è attualmente settato il magazzino lato admin:
Verifica livello magazzino true
Sottrai a magazzino true
Abilita l'acquisto false
Marca i Prodotti esauriti ***
Livello di Ordine dei prodotti a magazzino 5
Spero di essermi spiegato.
Ciao e grazie ancora, per la vostra pazienza
Allora provo a spiegare nuovamente il problema...
Es: io sul sito ho disponibili 10 palline, ne comprano tutte e 10... il prodotto sparisce (disabilitandosi) dal mio catalogo on-line.
Quello che vorrei, è che il prodotto venisse visualizzato ugualmente anche se le quantità sono pari a ZERO ma vietare al tempo stesso che altri utenti possano comprarlo in quanto in magazzino non c'è disponibilità.
Vi riporto qui di eguito come è attualmente settato il magazzino lato admin:
Verifica livello magazzino true
Sottrai a magazzino true
Abilita l'acquisto false
Marca i Prodotti esauriti ***
Livello di Ordine dei prodotti a magazzino 5
Spero di essermi spiegato.
Ciao e grazie ancora, per la vostra pazienza
Dr.Ock
Lascia i settaggi magazzino come li hai adesso e commenta la riga che disabilita il prodotto.dr_ock ha scritto:O c'è qualcosa che non mi torna o mi sono spiegato male.
Allora provo a spiegare nuovamente il problema...
Es: io sul sito ho disponibili 10 palline, ne comprano tutte e 10... il prodotto sparisce (disabilitandosi) dal mio catalogo on-line.
Quello che vorrei, è che il prodotto venisse visualizzato ugualmente anche se le quantità sono pari a ZERO ma vietare al tempo stesso che altri utenti possano comprarlo in quanto in magazzino non c'è disponibilità.
Vi riporto qui di eguito come è attualmente settato il magazzino lato admin:
Verifica livello magazzino true
Sottrai a magazzino true
Abilita l'acquisto false
Marca i Prodotti esauriti ***
Livello di Ordine dei prodotti a magazzino 5
Spero di essermi spiegato.
Ciao e grazie ancora, per la vostra pazienza
Così:
Codice: Seleziona tutto
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT == 'false') ) {
//tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0' where products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
}
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php