QTpro v1.0 - Quantity Tracking Professional
Moderatore: mod Generali
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
QTpro v1.0 - Quantity Tracking Professional
Ho la necessita di gestire le taglie e le relative disponibilità in base ad esse.
Cercando sul forum e su oscommerce ho trovato questa contribution
Mi sapete indicare se c'è una guida per installarla ?
Perchè non pacchetto non c'è.
Inoltre qualcuno di voi la usa?
Grazie
Cercando sul forum e su oscommerce ho trovato questa contribution
Mi sapete indicare se c'è una guida per installarla ?
Perchè non pacchetto non c'è.
Inoltre qualcuno di voi la usa?
Grazie
Re: QTpro v1.0 - Quantity Tracking Professional
Io l'ho appena inserita nella nuova versione del mio pacchetto osCPRO.3dstudiomax ha scritto:Ho la necessita di gestire le taglie e le relative disponibilità in base ad esse.
Cercando sul forum e su oscommerce ho trovato questa contribution
Mi sapete indicare se c'è una guida per installarla ?
Perchè non pacchetto non c'è.
Inoltre qualcuno di voi la usa?
Grazie
La guida per l'installazione la trovi nella contribution.
Il modulo QtPRO consente di :
* impostare e gestire correttamente le quantità per le varianti di un prodotto (es T-Shirt Rossa, Taglia XL, Sintetica)
* Tracciare le quantità delle singole varianti
Qui potete vedere un esempio di applicazione:
http://oscpro.oscommercedev.com/felpa-u ... a-p-7.html
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
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Marcus intanto grazie per l'intervento.
Potrest indicarmi in quale tra le tante versioni è contenuta la guida all'installazione ?
Io ne ho provate diverse, ma guida all'installazione niente...
Grazie
Potrest indicarmi in quale tra le tante versioni è contenuta la guida all'installazione ?
Io ne ho provate diverse, ma guida all'installazione niente...
Grazie
Re: QTpro v1.0 - Quantity Tracking Professional
Nell'ultima versione trovi addirittura un piccolo manuale3dstudiomax ha scritto:Marcus intanto grazie per l'intervento.
Potrest indicarmi in quale tra le tante versioni è contenuta la guida all'installazione ?
Io ne ho provate diverse, ma guida all'installazione niente...
Grazie
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
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Per ultima versione intendi questa? QTPro v4.51
Cmq un file chiamato manual.html c'è solo che non spiega come installarla ma consiglia di usare WinDiff.
Per esperienza tua... devo solamente copiare le parti commentate ?
Grazie
Cmq un file chiamato manual.html c'è solo che non spiega come installarla ma consiglia di usare WinDiff.
Per esperienza tua... devo solamente copiare le parti commentate ?
Grazie
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Ragazzi io ho l'esigenza di poter gestire le taglie e le quantità
Tipo:
Taglia M (5 prodotti disponibili)
Naturalmente i prodotti disponibili dopo l'acquista saranno 4, poi 3 e così via
Ho installato questa contribution (Quantity Tracking Professional), ma non riesco ad impostare a far visualizzare la quantità
Tipo:
Taglia M (5 prodotti disponibili)
Naturalmente i prodotti disponibili dopo l'acquista saranno 4, poi 3 e così via
Ho installato questa contribution (Quantity Tracking Professional), ma non riesco ad impostare a far visualizzare la quantità
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Amici allora l'ho analizzata in fondo e sono riuscito ad assegnare una quantità ad ogni Attributo.
Sono in locale pertanto vorrei metterla prima online per vedere se funziona tutto alla perfezione.
Per i miei test ho usato una versione originale di oscommerce.
Vi tengo aggiornati
Grazie cmq a tutti per gli ottimi suggerimenti
Sono in locale pertanto vorrei metterla prima online per vedere se funziona tutto alla perfezione.
Per i miei test ho usato una versione originale di oscommerce.
Vi tengo aggiornati
Grazie cmq a tutti per gli ottimi suggerimenti
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Sto provando ad installare la contribution in questione su una versione di oscommerce modificata
La sezione admin va bene, almeno per il momento non mi riporta errori... mentre il lato pubblico presenta degli errori. Anche perchè secondo me mancano delle parti che non riesco a trovare nel mio codice.
Le parti da modificare sarebbero:
Da sostituire con
Poi c'è questo:
Aggiungere dopo
Ed infine questo:
da sostituire con questo:
Il mio file Catalog/product_info.php è questo:
Mi date una mano a capire dove sbaglio ?
Grazie
La sezione admin va bene, almeno per il momento non mi riporta errori... mentre il lato pubblico presenta degli errori. Anche perchè secondo me mancano delle parti che non riesco a trovare nel mio codice.
Le parti da modificare sarebbero:
Codice: Seleziona tutto
<?php
if (tep_not_null($product_info['products_image'])) {
?>
Codice: Seleziona tutto
<?php
if (tep_not_null($product_info['products_image'])) {
//++++ QT Pro: Begin Changed code?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="smallText">
<?php
//++++ QT Pro: End Changed Code
?>
Codice: Seleziona tutto
?>
<p><?php echo stripslashes($product_info['products_description']); ?></p>
<?php
Codice: Seleziona tutto
//++++ QT Pro: Begin Changed code
if (tep_not_null($product_info['products_image'])) {
?>
</td>
</tr>
</table>
<?php
}
//++++ QT Pro: End Changed Code
Ed infine questo:
Codice: Seleziona tutto
$products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
$products_attributes = tep_db_fetch_array($products_attributes_query);
if ($products_attributes['total'] > 0) {
?>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td class="main" colspan="2"><?php echo TEXT_PRODUCT_OPTIONS; ?></td>
</tr>
<?php
$products_options_name_query = tep_db_query("select distinct popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order by popt.products_options_name");
while ($products_options_name = tep_db_fetch_array($products_options_name_query)) {
$products_options_array = array();
$products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'");
while ($products_options = tep_db_fetch_array($products_options_query)) {
$products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']);
if ($products_options['options_values_price'] != '0') {
$products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';
}
}
if (isset($cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']])) {
$selected_attribute = $cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']];
} else {
$selected_attribute = false;
}
?>
<tr>
<td class="main"><?php echo $products_options_name['products_options_name'] . ':'; ?></td>
<td class="main"><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute); ?></td>
</tr>
<?php
}
?>
</table>
<?php
Codice: Seleziona tutto
$products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
$products_attributes = tep_db_fetch_array($products_attributes_query);
if ($products_attributes['total'] > 0) {
//++++ QT Pro: Begin Changed code
$products_id=(preg_match("/^\d{1,10}(\{\d{1,10}\}\d{1,10})*$/",$HTTP_GET_VARS['products_id']) ? $HTTP_GET_VARS['products_id'] : (int)$HTTP_GET_VARS['products_id']);
require(DIR_WS_CLASSES . 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN . '.php');
$class = 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN;
$pad = new $class($products_id);
echo $pad->draw();
//++++ QT Pro: End Changed Code
Il mio file Catalog/product_info.php è questo:
Codice: Seleziona tutto
<?php
/*
$Id: product_info.php,v 1.97 2003/07/01 14:34:54 hpdl Exp $
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2003 osCommerce
Released under the GNU General Public License
*/
require('includes/application_top.php');
require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_PRODUCT_INFO);
$product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
$product_check = tep_db_fetch_array($product_check_query);
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<link rel="stylesheet" href="lightbox.css" type="text/css" media="screen" />
<script language="javascript"><!--
function popupWindow(url) {
window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
}
//--></script>
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="js/lightbox.js"></script>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->
<!-- body //-->
<tr><td valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td width="14" bgcolor="#FFFFFF"></td>
<td width="235" valign="top"><?php require(DIR_WS_INCLUDES . 'column_left.php'); ?></td>
<td width="517" valign="top" bgcolor="#FFFFFF">
<table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td height="30"></td></tr>
<?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>
<?php
if ($product_check['total'] < 1) {
?>
<tr><td height="15" class="tx3"><?= TEXT_PRODUCT_NOT_FOUND; ?></td></tr>
<tr><td width="447" height="1" bgcolor="#B2B2B2"></td></tr>
<tr><td height="23"></td></tr>
</table>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2">
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
<td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td>
<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
<?php
} else {
$product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
$product_info = tep_db_fetch_array($product_info_query);
tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'");
if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
$products_price = '<s>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
} else {
$products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
}
if (tep_not_null($product_info['products_model'])) {
$products_name = $product_info['products_name'] . '<br><span class="smallText">[' . $product_info['products_model'] . ']</span>';
} else {
$products_name = $product_info['products_name'];
}
?>
<tr><td height="15" class="tx3"><?php echo $products_name; ?></td></tr>
<tr><td width="447" height="1" bgcolor="#B2B2B2"></td></tr>
<tr><td height="23"></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td width="96" valign="top" align="center">
<script language="javascript"><!--
document.write('<?php echo '<a href="'. tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) .'" target="_blank" rel="lightbox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript>
<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank" rel="lightbox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
</noscript>
</td>
<td width="340" valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td height="8"></td></tr>
<tr><td><span class="ml1"><?=$products_name?></span></td></tr>
<tr><td height="3"></td></tr>
<tr><td style="line-height:12px;"><?php echo stripslashes($product_info['products_description']); ?>
<?php
//++++ QT Pro: Begin Changed code
if (tep_not_null($product_info['products_image']) {
?>
</td>
</tr>
</table>
<?php
}
}
//++++ QT Pro: End Changed Code</td></tr>
<tr><td height="8"></td></tr>
<tr><td><span class="tx5"><?=$products_price?></span> </td></tr>
<tr><td height="4"></td></tr>
<tr><td><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params()) . '">' . tep_image_button('button_reviews.gif', IMAGE_BUTTON_REVIEWS) . '</a>'; ?> <?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_add_to_cart1.gif', IMAGE_BUTTON_IN_CART); ?></td></tr>
</table>
</td></tr>
<tr><td height="24" colspan="2"></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td colspan="2" style="line-height:12px;">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td class="main">
<?php
$products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
$products_attributes = tep_db_fetch_array($products_attributes_query);
if ($products_attributes['total'] > 0) {
//++++ QT Pro: Begin Changed code
$products_id=(preg_match("/^\d{1,10}(\{\d{1,10}\}\d{1,10})*$/",$HTTP_GET_VARS['products_id']) ? $HTTP_GET_VARS['products_id'] : (int)$HTTP_GET_VARS['products_id']);
require(DIR_WS_CLASSES . 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN . '.php');
$class = 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN;
$pad = new $class($products_id);
echo $pad->draw();
//++++ QT Pro: End Changed Code
}
?>
</td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
$reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
$reviews = tep_db_fetch_array($reviews_query);
if ($reviews['count'] > 0) {
?>
<tr>
<td class="main"><?php echo TEXT_CURRENT_REVIEWS . ' ' . $reviews['count']; ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
}
if (tep_not_null($product_info['products_url'])) {
?>
<tr>
<td class="main"><?php echo sprintf(TEXT_MORE_INFORMATION, tep_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($product_info['products_url']), 'NONSSL', true, false)); ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
}
if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) {
?>
<tr>
<td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></td>
</tr>
<?php
} else {
?>
<tr>
<td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td>
</tr>
<?php
}
if (DISPLAY_EXTRA_IMAGES == 'true'){
if ($product_check['total'] >= 1) {
include (DIR_WS_INCLUDES . 'products_extra_images.php');
}
}
?>
</table>
</td></tr>
</table>
<? } ?>
</form>
<!-- body_eof //-->
<br/> <table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td width="447" height="1" bgcolor="#B2B2B2"></td></tr>
<tr><td align="center" height="49"><?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('specials.php')?>"><?=BOX_HEADING_SPECIALS?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('advanced_search.php')?>"><?=BOX_SEARCH_ADVANCED_SEARCH?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('contact_us.php')?>"><?=BOX_INFORMATION_CONTACT?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('create_account.php')?>"><?=HEADER_TITLE_CREATE_ACCOUNT?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?>
<? if (tep_session_is_registered('customer_id')) {
?><a class="ml2" href="<?=tep_href_link('logoff.php')?>"><?=HEADER_TITLE_LOGOFF?></a><? } else
{ ?><a class="ml2" href="<?=tep_href_link('login.php')?>"><?=HEADER_TITLE_LOGIN?></a><? } ?>
</td></tr>
</table>
</td></tr>
</table>
</td></tr>
<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
Mi date una mano a capire dove sbaglio ?
Grazie
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Ragazzi è tutto il giorno che ci prova... ma nulla
Consigli ?
Consigli ?
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Sono sempre fermo sul file product_info.php... non so più dove sbattere la testa
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Ragazzi ottengo questo errore:
Parse error: syntax error, unexpected '<' in C:\xxx\htdocs\mio\product_info.php on line 146
Mio file product_info.php
Che tipo di errore è ?
Parse error: syntax error, unexpected '<' in C:\xxx\htdocs\mio\product_info.php on line 146
Mio file product_info.php
Codice: Seleziona tutto
<?php
/*
$Id: product_info.php,v 1.97 2003/07/01 14:34:54 hpdl Exp $
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2003 osCommerce
Released under the GNU General Public License
*/
require('includes/application_top.php');
require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_PRODUCT_INFO);
$product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
$product_check = tep_db_fetch_array($product_check_query);
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<link rel="stylesheet" href="lightbox.css" type="text/css" media="screen" />
<script language="javascript"><!--
function popupWindow(url) {
window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
}
//--></script>
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="js/lightbox.js"></script>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->
<!-- body //-->
<tr><td valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td width="14" bgcolor="#FFFFFF"></td>
<td width="235" valign="top"><?php require(DIR_WS_INCLUDES . 'column_left.php'); ?></td>
<td width="517" valign="top" bgcolor="#FFFFFF">
<table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td height="30"></td></tr>
<?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>
<?php
if ($product_check['total'] < 1) {
?>
<tr><td height="15" class="tx3"><?= TEXT_PRODUCT_NOT_FOUND; ?></td></tr>
<tr><td width="447" height="1" bgcolor="#B2B2B2"></td></tr>
<tr><td height="23"></td></tr>
</table>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2">
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
<td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td>
<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
<?php
} else {
$product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
$product_info = tep_db_fetch_array($product_info_query);
tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'");
if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
$products_price = '<s>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
} else {
$products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
}
if (tep_not_null($product_info['products_model'])) {
$products_name = $product_info['products_name'] . '<br><span class="smallText">[' . $product_info['products_model'] . ']</span>';
} else {
$products_name = $product_info['products_name'];
}
?>
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td class="pageHeading" valign="top"><?php echo $products_name; ?></td>
<td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td>
</tr>
</table></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td class="main">
<?php
if (tep_not_null($product_info['products_image'])) {
//++++ QT Pro: Begin Changed code
?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="smallText">
<?php
//++++ QT Pro: End Changed Code
?>
<table border="0" cellspacing="0" cellpadding="2" align="right">
<tr>
<td align="center" class="smallText">
<script language="javascript"><!--
document.write('<?php echo '<a href="'. tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) .'" target="_blank" rel="lightbox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript>
<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank" rel="lightbox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
</noscript>
</td>
<td width="340" valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td height="8"></td></tr>
<tr><td><span class="ml1"><?=$products_name?></span></td></tr>
<tr><td height="3"></td></tr>
<tr><td style="line-height:12px;"><?php echo stripslashes($product_info['products_description']) ?>
//++++ QT Pro: Begin Changed code
if (tep_not_null($product_info['products_image'])) {
?>
</td>
</tr>
</table>
<?php
}
//++++ QT Pro: End Changed Code
<tr><td height="8"></td></tr>
<tr><td><span class="tx5"><?=$products_price?></span> </td></tr>
<tr><td height="4"></td></tr>
<tr><td><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params()) . '">' . tep_image_button('button_reviews.gif', IMAGE_BUTTON_REVIEWS) . '</a>'; ?> <?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_add_to_cart1.gif', IMAGE_BUTTON_IN_CART); ?></td></tr>
</table>
</td></tr>
<tr><td height="24" colspan="2"></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td colspan="2" style="line-height:12px;">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td class="main">
<?php
$products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
$products_attributes = tep_db_fetch_array($products_attributes_query);
if ($products_attributes['total'] > 0) {
//++++ QT Pro: Begin Changed code
$products_id=(preg_match("/^\d{1,10}(\{\d{1,10}\}\d{1,10})*$/",$HTTP_GET_VARS['products_id']) ? $HTTP_GET_VARS['products_id'] : (int)$HTTP_GET_VARS['products_id']);
require(DIR_WS_CLASSES . 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN . '.php');
$class = 'pad_' . PRODINFO_ATTRIBUTE_PLUGIN;
$pad = new $class($products_id);
echo $pad->draw();
//++++ QT Pro: End Changed Code
}
?>
</td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
$reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
$reviews = tep_db_fetch_array($reviews_query);
if ($reviews['count'] > 0) {
?>
<tr>
<td class="main"><?php echo TEXT_CURRENT_REVIEWS . ' ' . $reviews['count']; ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
}
if (tep_not_null($product_info['products_url'])) {
?>
<tr>
<td class="main"><?php echo sprintf(TEXT_MORE_INFORMATION, tep_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($product_info['products_url']), 'NONSSL', true, false)); ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
}
if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) {
?>
<tr>
<td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></td>
</tr>
<?php
} else {
?>
<tr>
<td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td>
</tr>
<?php
}
if (DISPLAY_EXTRA_IMAGES == 'true'){
if ($product_check['total'] >= 1) {
include (DIR_WS_INCLUDES . 'products_extra_images.php');
}
}
?>
</table>
</td></tr>
</table>
<? } ?>
</form>
<!-- body_eof //-->
<br> <table border="0" cellspacing="0" cellpadding="0" width="447" align="center">
<tr><td width="447" height="1" bgcolor="#B2B2B2"></td></tr>
<tr><td align="center" height="49"><?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('specials.php')?>"><?=BOX_HEADING_SPECIALS?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('advanced_search.php')?>"><?=BOX_SEARCH_ADVANCED_SEARCH?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('contact_us.php')?>"><?=BOX_INFORMATION_CONTACT?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?> <a class="ml2" href="<?=tep_href_link('create_account.php')?>"><?=HEADER_TITLE_CREATE_ACCOUNT?></a> <?=tep_image(DIR_WS_IMAGES.'m19.gif','','','','class="ab"')?>
<? if (tep_session_is_registered('customer_id')) {
?><a class="ml2" href="<?=tep_href_link('logoff.php')?>"><?=HEADER_TITLE_LOGOFF?></a><? } else
{ ?><a class="ml2" href="<?=tep_href_link('login.php')?>"><?=HEADER_TITLE_LOGIN?></a><? } ?>
</td></tr>
</table>
</td></tr>
</table>
</td></tr>
<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Ragazzi diciamo che analizzando il codice passo dopo passo per benino riesco ad ottenere dei piccoli miglioramenti.
Volevo chiedervi... ma quando agli attributi attribuisco un valore, questo una volta che il prodotto viene acquistato diminuisce vero ?
Nel senso che gestisce sia l'attributo che la giacenza in magazzino del prodotto con quella specifica...
spero che sia così, altrimenti questa contribribution non mi serve a nulla
Grazie
Volevo chiedervi... ma quando agli attributi attribuisco un valore, questo una volta che il prodotto viene acquistato diminuisce vero ?
Nel senso che gestisce sia l'attributo che la giacenza in magazzino del prodotto con quella specifica...
spero che sia così, altrimenti questa contribribution non mi serve a nulla
Grazie
Re: QTpro v1.0 - Quantity Tracking Professional
Ovviamente si3dstudiomax ha scritto: Volevo chiedervi... ma quando agli attributi attribuisco un valore, questo una volta che il prodotto viene acquistato diminuisce vero ?
Grazie
La contribution contiene anche un report che ti consente di avere subito il quadro delle giacenze:
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
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
Grazie dell'informazione Marcus
-
- membro Veteran
- Messaggi: 520
- Iscritto il: 24/06/2008, 19:45
Re: QTpro v1.0 - Quantity Tracking Professional
marcus ma il fatto della tabellina che visualizza la dispinibilità funziona solo dall'ultima versione, oppure anche nelle precedenti ?