Aide - Recherche - Membres - Calendrier
Version complète : Suppression des prix à 0 pour mettre Devis à la place
Forum osCommerce-fr > Adapter OsCommerce MS2 > Design
pascal37
Bonjour à tous,

J'ai mis en place en place un boutique à l'aide d'un template...Or tout fonctionne, mais j'essai désespérément de modifier à par la contrib Hide Price if $0 le contenu de mon fichier products_info.php. Bien évidemment le code est assez différent et je galère dure !!!
Je cherche à remplacer le prix d'un produit qui serait à 0 par la mention sur DEVIS et proposer par la même occasion le bouton "devis" à la place de celui "ajouter".
Je manque un peu de connaissance en php...Quelqu'un pourrait-il m'aider ??? Merci d'avance !
Voici mon code[codebox]<?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 © 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">
<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=400,screenX=150,screenY=150,top=150,left=150')
}
//--></script>
<meta name="generator" content="Namo WebEditor v6.0">
</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 //-->
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<!-- body_text //-->
<td width="100%" valign="top"><?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>

<table cellspacing=0 cellpadding=0 width=437 align=center>
<tr><td background=images/m22.gif width=437 height=29 valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td height=8></td></tr>
<tr><td width=25></td><td class=ch6>Produit</td></tr>
</table>
</td></tr>
<tr><td valign=top class=ch7>








<table border="0" width="100%" cellspacing="0" cellpadding="0">
<?php
if ($product_check['total'] < 1) {
?>

<tr>
<td><?php new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND))); ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<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>
<?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 style="color:#494949; font-size:10px">' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s>&nbsp;<span style=ch8>' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
} else {
$products_price = '<span style=ch8>'.$currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])).'</style>';
}

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'];
}
?>

<table cellspacing=0 cellpadding=0 width=417 border=0 align=center>
<tr><td height=13></td></tr>
<tr><td width=208 align=center valign=middle>




<!-- display image -->
<?php
if (tep_not_null($product_info['products_image'])) {
?>
<table cellspacing="0" cellpadding="2" align="center">
<tr>
<td align="center" class="smallText">
<script language="javascript"><!--
document.write('<?php echo '<a href="java script:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, ' hspace="15" vspace="15"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript>
<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, ' hspace="15" vspace="15"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
</noscript>
</td>
</tr>
</table>
<?php
}
?>
<!--end display image -->

</td>
<td background=images/m09.gif width=1></td>
<td width=208>
<table cellspacing=0 cellpadding=0 width=190 align=center>
<tr>
<td valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td class=ch9><?=$products_name?><font color="white"></font></td></tr>
<tr><td height=13><font color="white"></font></td></tr>
<tr><td class=ch10>
<font color="white"><?
if ($product_info['products_date_available'] > date('Y-m-d H:i:s'))
echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available']));
else
echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added']));
?>
</font> </td></tr>
<tr><td height=10><font color="white"></font></td></tr>
<tr><td><span class="ch10"><font color="#FF6633">Item #:</font></span><font color="white"> <span class="ch14"><?=$products_id?></span></font></td></tr>
<tr><td height=14><font color="white"></font></td></tr>
<tr><td><span class="ch11"><font color="#FF6633">Prix:</font></span><font color="white">&nbsp; <span class="ch8"><?=$products_price?></span> </font></td></tr>
</table>
</td>
</tr>
<tr><td height=5></td></tr>
<tr><td colspan=2 align=right><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_BUY_NOW); ?> &nbsp;&nbsp;</td></tr>
<tr><td height=5></td></tr>
</table>
</td></tr>
<tr><td height=5></td></tr>
<tr><td colspan=3 width=417 height=1 background=images/m29.gif></td></tr>
<tr><td height=18></td></tr>
<tr><td colspan=3 valign=top align=center>
<table cellspacing=0 cellpadding=0 width=385 align=center>
<tr><td class=ch9><font color="#FF6633">Description</font></td></tr>
<tr><td height=17></td></tr>
<tr><td class=ch14>
<font color="white"> <?php echo stripslashes($product_info['products_description']); ?>
</font> </td></tr>
</table>
</td></tr>
<tr><td height=32></td></tr>
</table>
<tr><td><img src=images/m30.gif width=438 height=7></td></tr>

<!----------------------- Not editable part -------------------------------->

<tr><td>

<?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) {
?>
<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
}
?>
</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
}

?>
<!--
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<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 class="main"><?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>'; ?></td>
<td class="main" align="right"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></td>
<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
-->
<tr>
<td>
<?php
/*
if ((USE_CACHE == 'true') && empty($SID)) {
echo tep_cache_also_purchased(3600);
} else {
include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS);
}
*/
}
?>


</td></tr>

</table>
</form></td>
<!-- body_text_eof //-->
</tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
[/codebox]
dino95
salut!
Un debut de réponse ici.

http://www.oscommerce-fr.info/forum/index....=nous+contacter
cocomino
Bsr,
pour :
CITATION
et proposer par la même occasion le bouton "devis" à la place de celui "ajouter".

je te conseillerais comme à 'Association WDA' sur ce post : http://www.oscommerce-fr.info/forum/index....showtopic=46121
d'utiliser cette contribution : http://www.oscommerce.com/community/contributions,2500 ...
je m'autocite :
CITATION
tu peux choisir un prix du style 999999, et le bouton 'contacter nous' se substitue au bouton 'acheter' ....
De plus, Paul Barrera dans son add-on de juillet 2005 redirige le client vers la page contact_us et insère directement la référence du produit dans le formulaire ...

Formulaire dont tu pourras changer le code pour en faire un devis ...
Cdt.
pascal37
Tout d'abord merci pour vos posts qui m'ont bien aidé...J'ai réussi à modifié correctement mes fichiers product_listing et products_info. Ainsi l'information "Sur Devis " à remplacé le prix à 0. Je commence à voir le bout de mes modifs...

Toutefois, je bloque avec le fichier "new_products.php" dans lequel je n'arrive pas à placer le test suivant donné dans la contrib
http://www.oscommerce.com/community/contributions,2500 le code à insérer est le suivant :

if ($new_products['products_price'] == 0){
$info_box_contents[$row][$col] = array('align' => 'center',
'params' => 'class="smallText" width="33%" valign="top"',
'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>Call For Pricing');

}else{
$info_box_contents[$row][$col] = array('align' => 'center',
'params' => 'class="smallText" width="33%" valign="top"',
'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])));
}



En effet, mon fichier est différent ce dernier est issu d'un template. Une bonne âme charitable pourrait-elle m'aider sur la modification de mon code ? En vous remerciant tous par avance !
le voici :[codebox]<!-- new_products //-->
<?php

if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {
$new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
} else {
$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
}

$row = 0;
$col = 0;


echo '

<table cellspacing=0 cellpadding=0 width=437 align=center>
<tr><td background=images/m22.gif width=437 height=29 valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td height=8></td></tr>
<tr><td width=25></td><td class=ch6>featured products</td></tr>
</table>
</td></tr>
<tr><td valign=top class=ch7>

<table cellspacing=0 cellpadding=0 width=417 border=0 align=center>
<tr><td height=13></td></tr>
<tr>


';


while ($new_products = tep_db_fetch_array($new_products_query)) {
$new_products['products_name'] = tep_get_products_name($new_products['products_id']);
$product_query = tep_db_query("select products_description from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$new_products['products_id'] . "' and language_id = '" . (int)1 . "'");
$product = tep_db_fetch_array($product_query);
$new_products['products_description'] = $product['products_description'];
echo '

<td width=208 valign=top align=center>
<table cellspacing=0 cellpadding=0 width=200 align=center>
<tr><td width=90 align=center valign=top><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'vspace=0') . '</a></td>
<td valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td><a height=35 valign=middle class=ch9 href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a></td></tr>

<tr><td class=ch10 height=35 valign=middle>'.preg_replace('/\s\S*$/i', '', substr($new_products['products_description'], 0, 25)).' ...</td></tr>
<tr><td height=0></td></tr>
<tr><td><span class=ch11>price:</span> <span class=ch8>'.$currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])).'</span> </td></tr>
</table>
</td>
</tr>
<tr><td height=20></td></tr>
<tr><td colspan=2 align=right><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image_button('small_view.gif') . '</a><a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $new_products['products_id']) . '">' . tep_image_button('button_in_cart.gif') . '</a> &nbsp;&nbsp;</td></tr>
</table>
</td>


';

$col ++;
if ($col > 1) {
$col = 0;
$row ++;
echo '

</tr>
<tr><td height=5></td></tr>
<tr><td colspan=3 valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td width=200 height=1 background=images/m29.gif></td><td width=14></td> <td width=200 height=1 background=images/m29.gif></td></tr>
</table>
</td></tr>
<tr><td height=5></td></tr>
<tr>


';
} else echo '<td background=images/m09.gif width=1></td>';
}


echo '

</tr>
</table>

</td></tr>
<tr><td><img src=images/m30.gif width=438 height=7></td></tr>
</table>

';


?>
<!-- new_products_eof //-->
[/codebox]
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2024 Invision Power Services, Inc.