Demande d'aide pour correction code

Petit nouveau ! | 6 Messages

24 déc. 2009, 16:23

bonjour,

Je suis débutant en php, j'ai un code qui ne fonctionne pas bien sous Safari l'explorateur Mac et Iphone.
Je viens vous demander un peu d'aide, si vous pouviez me corriger les erreurs qu'il y a dans cette page :
<?php
*/

  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; ?>">
<?php
# cDynamic Meta Tags
/*<title><?php echo TITLE; ?>*/
require(DIR_WS_INCLUDES . 'meta_tags.php');
#
?>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<!-- Attrib price update  //-->
<script language="javascript">
<!--
   function FormatNumber(num)
   {
     if(isNaN(num)) { num = "0"; }
     sign = (num == (num = Math.abs(num)));
     num = Math.floor(num*100+0.50000000001);
     cents = num%100;
     num = Math.floor(num/100).toString();
     if(cents<10) { cents = "0" + cents; }
     for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
     {
       num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
     }
     return (((sign)?'':'-') + num + '.' + cents);
   }

     function FormatNumber1(num)
  {
    if(isNaN(num)) { num = "0"; }
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num*1+0.50000000001);
    cents = num%100;
    num = Math.floor(num/100).toString();
    if(cents<10) { cents = "0" + cents; }
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    {
      num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
    }
    return (((sign)?'':'-') + num + ',' + cents);
  }

  function showPrice(form)
  {
   var currencysymbol1 = "";
    var currencysymbol2 = "";
    var myTotalPrice = 0;
    var showUP = 0;
    var myMathProblem = "";
    myItemPrice = parseFloat(form.nuPrice.value);

   myDollarSign2 = form.nuPrice.value.indexOf("€",0)
   if ( myDollarSign2 != "-1" )
   {
      currencysymbol1 = "";
     currencysymbol2 = " €";
   } else {
     currencysymbol1 = "";
     currencysymbol2 = " €";
   }

   for (var i = 0; i < form.elements.length; i++)
    {
      var e = form.elements[i];
      if ( e.type == 'select-one' )
      {
        showUP = 1;
        Item = e.selectedIndex;
        myPrice = e.options[Item].text;
        myDollarSign = myPrice.indexOf("$",0)
        if ( myDollarSign != "-1" )
        {
        currencysymbol1 = "$";
        currencysymbol2 = "";
          myParSign = myPrice.indexOf(")", myDollarSign);
          myAttributeString = myPrice.substring(myDollarSign+1, myParSign);
          myAttributeString = myAttributeString.replace(/,/,"");
          myAttributePrice = parseFloat(myAttributeString);
          myMathProblem = myPrice.charAt(myDollarSign - 1);
        } else {
         myDollarSign1 = myPrice.indexOf("(",0)
         if ( myDollarSign1 != "-1" )
         {
         currencysymbol1 = "";
          currencysymbol2 = " €";
         myParSign = myPrice.indexOf(")", myDollarSign1);
         myAttributeString = myPrice.substring(myDollarSign1+1, myParSign);
         myAttributeString = myAttributeString.replace(/,/,"");
         myAttributePrice = parseFloat(myAttributeString);
         myMathProblem = myPrice.charAt(myDollarSign1 - 1);
         } else {
         myAttributePrice = 0;
         }
    
      }
          if (myMathProblem == "-")
          {
            myTotalPrice = myTotalPrice - myAttributePrice;
          } else {
            myTotalPrice = myTotalPrice + myAttributePrice;
          }
      }
    }
    if ( showUP )
    {
      myDollarSign3 = form.nuPrice.value.indexOf(".",0)
      if ( myDollarSign3 != "-1" )
      {
        myTotalPrice = FormatNumber(myTotalPrice + myItemPrice);
      } else {
        myTotalPrice = FormatNumber1(myTotalPrice + myItemPrice);
      }
        document.getElementById("productNEWprice").innerHTML = currencysymbol1 + myTotalPrice + currencysymbol2;
    }
  }

    function showPrice1(form)
  {
   var currencysymbol1 = "";
    var currencysymbol2 = "";
    var myTotalPrice = 0;
    var showUP = 0;
    var myMathProblem = "";
    myItemPrice = parseFloat(form.nuPrice1.value);

   myDollarSign2 = form.nuPrice1.value.indexOf("EUR",0)
   if ( myDollarSign2 != "-1" )
   {
      currencysymbol1 = "";
     currencysymbol2 = " EUR";
   } else {
     currencysymbol1 = "";
     currencysymbol2 = " €";
   }

   for (var i = 0; i < form.elements.length; i++)
    {
      var e = form.elements[i];
      if ( e.type == 'select-one' )
      {
        showUP = 1;
        Item = e.selectedIndex;
        myPrice = e.options[Item].text;
        myDollarSign = myPrice.indexOf("$",0)
        if ( myDollarSign != "-1" )
        {
        currencysymbol1 = "$";
        currencysymbol2 = "";
          myParSign = myPrice.indexOf(")", myDollarSign);
          myAttributeString = myPrice.substring(myDollarSign+1, myParSign);
          myAttributeString = myAttributeString.replace(/,/,"");
          myAttributePrice = parseFloat(myAttributeString);
          myMathProblem = myPrice.charAt(myDollarSign - 1);
        } else {
         myDollarSign1 = myPrice.indexOf("(",0)
         if ( myDollarSign1 != "-1" )
         {
         currencysymbol1 = "";
          currencysymbol2 = " EUR";
         myParSign = myPrice.indexOf(")", myDollarSign1);
         myAttributeString = myPrice.substring(myDollarSign1+1, myParSign);
         myAttributeString = myAttributeString.replace(/,/,"");
         myAttributePrice = parseFloat(myAttributeString);
         myMathProblem = myPrice.charAt(myDollarSign1 - 1);
         } else {
         myAttributePrice = 0;
         }
    
      }
          if (myMathProblem == "-")
          {
            myTotalPrice = myTotalPrice - myAttributePrice;
          } else {
            myTotalPrice = myTotalPrice + myAttributePrice;
          }
      }
    }
    if ( showUP )
    {
      myDollarSign3 = form.nuPrice1.value.indexOf(".",0)
      if ( myDollarSign3 != "-1" )
      {
        myTotalPrice = FormatNumber(myTotalPrice + myItemPrice);
      } else {
        myTotalPrice = FormatNumber1(myTotalPrice + myItemPrice);
      }
          if(document.getElementById("productNEWprice1")!=null){
            document.getElementById("productNEWprice1").innerHTML = currencysymbol1 + myTotalPrice + currencysymbol2;
        }
        //productNEWprice1.innerHTMML="Algo";
    }
  }
//-->
</script>
<!-- Attrib price update Fin //-->


<script language="javascript"><!--
function popupWindow(url) {
  window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,res
izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,l
e
ft=150')
}
//--></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 //-->
<table border="0" width="100%" cellspacing="3" cellpadding="3">
  <tr>
    <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- left_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
<!-- left_navigation_eof //-->
    </table></td>
<!-- 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 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 {
// BOF: More Pics 6  Added: , p.products_subimage1, p.products_subimage2, p.products_subimage3, p.products_subimage4, p.products_subimage5, p.products_subimage6
    $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, p.products_subimage1, p.products_subimage2, p.products_subimage3, p.products_subimage4, p.products_subimage5, p.products_subimage6, 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 . "'");
// EOF: More Pics 6
    $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>';
//Attrib price update
$nuPrice1 =  $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
$nuPrice =  $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id']));
//Attrib price update Fin

    } else {
//Attrib price update
$products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
$nuPrice = $products_price;
    }
$nuPrice = str_replace(",", "", $nuPrice);
$nuPrice1 = str_replace(",", "", $nuPrice1);
//Attrib price update Fin

    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'];
    }
    
// BOF: More Pics 6

    $mopics_image_width = (MOPICS_RESTRICT_IMAGE_SIZE=='true'?SMALL_IMAGE_WIDTH:'');
    $mopics_image_height = (MOPICS_RESTRICT_IMAGE_SIZE=='true'?SMALL_IMAGE_HEIGHT:'');

    if (MOPICS_SHOW_ALL_ON_PRODUCT_INFO=='true') {

      $mopics_output = '';
      $mo_row = 1;
      $mo_col = 1;

      $mopics_images = array();
      if (tep_not_null($product_info['products_image']) && MOPICS_GROUP_WITH_PARENT == 'true') { $mopics_images[] = $product_info['products_image']; }
      for ( $mo_item=1; $mo_item<7; $mo_item++ ) {
        if (tep_not_null($product_info['products_subimage'.$mo_item])) { $mopics_images[] = $product_info['products_subimage'.$mo_item]; }
      }
      $mopics_count = sizeof($mopics_images);

      if (tep_not_null($product_info['products_image'])) { $mopics_output .= '<table border="0" cellspacing="0" cellpadding="6" align="'.MOPICS_TABLE_ALIGNMENT.'">'."\n"; }

      for ( $mo_item=0; $mo_item<$mopics_count; $mo_item++ ) {

        if ($mo_row<(MOPICS_NUMBER_OF_ROWS+1)) {
          if ($mo_col==1) {$mopics_output.='<tr>';}

          $mopics_output .= '              <td align="center" class="smallText"><script language="javascript"><!--
                document.write(\'<a href="java script:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id'].'&invis='.(MOPICS_GROUP_WITH_PARENT=='true'?$mo_item:($mo_item+1))).'\\\')">' . tep_image(DIR_WS_IMAGES . $mopics_images[$mo_item], addslashes($product_info['products_name']), (MOPICS_RESTRICT_PARENT=='false'&&$mo_item==0&&MOPICS_GROUP_WITH_PARENT=='true'?'':$mopics_image_width), (MOPICS_RESTRICT_PARENT=='false'&&$mo_item==0&&MOPICS_GROUP_WITH_PARENT=='true'?'':$mopics_image_height), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>\');
                //--></script><noscript>
                  <a href="' . tep_href_link(DIR_WS_IMAGES . $mopics_images[$mo_item]) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $mopics_images[$mo_item], $product_info['products_name'], $mopics_image_width, $mopics_image_height, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>
                  </noscript></td>'."\n";

          if ($mo_col==MOPICS_NUMBER_OF_COLS) { $mo_col=1; $mo_row++; $mopics_output.='</tr>'."\n"; } else { $mo_col++; }
        }
    
      }
  
      if ($mo_col!=1){ while (($mo_col++)<(MOPICS_NUMBER_OF_COLS+1)) { $mopics_output.='<td>&nbsp;</td>'."\n"; } }

      if (tep_not_null($product_info['products_image'])) { $mopics_output .= '</table>'."\n"; }

    }

// EOF: More Pics 6
    
?>
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td class="pageHeading" align="right" valign="top">
<tr>
            <td class="pageHeading" valign="top"><?php echo $products_name; ?></td>
<td class="pageHeading" align="right" valign="top" bgcolor="#FFFFFF">
            </td>
          </tr>
        </table></td>
      </tr>
      <tr>
        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
      </tr>
      <tr>
        <td class="main">
<?php

// BOF: More Pics 6    ADDED to if statement:  && MOPICS_GROUP_WITH_PARENT == 'false'
    if (tep_not_null($product_info['products_image']) && MOPICS_GROUP_WITH_PARENT == 'false') {
?>
          <table border="0" cellspacing="0" cellpadding="2" align="right">
            <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']), (MOPICS_RESTRICT_PARENT=='false'?'':SMALL_IMAGE_WIDTH), (MOPICS_RESTRICT_PARENT=='false'?'':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">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], (MOPICS_RESTRICT_PARENT=='false'?'':SMALL_IMAGE_WIDTH), (MOPICS_RESTRICT_PARENT=='false'?'':SMALL_IMAGE_HEIGHT), 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
<?php // EOF: More Pics 6 ?>
</noscript>
              </td>
            </tr>
          </table>
<?php
    }  
// BOF: More Pics 6
    if (MOPICS_TABLE_LOCATION=='above') {
      echo '          <table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td align="center" class="smallText">'.$mopics_output.'</td>
            </tr>
          </table>
          &nbsp;<br>'."\n";
    } else if (MOPICS_TABLE_LOCATION=='sides') {
      echo $mopics_output;
    }
// EOF: More Pics 6
?>
          <p><?php echo stripslashes($product_info['products_description']); ?></p>
<?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"><h2><?php echo TEXT_PRODUCT_OPTIONS; ?>
<br>
<br>

</h2></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 . "'" . " order by pa.options_values_price");

        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>
<!-- Attrib price update  //-->
<td class="main"><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute, "onChange='showPrice(this.form);showPrice1(this.form);'");?></td>
<!-- Proyecto Icaro (Fin Modificado) //-->
</tr>
<?php

      }

?>

     <tr>
        <td><table bordercolor=blue border="3" width="100%" cellspacing="4" cellpadding="9">
         <tr>
           <td>

  <h2><?php echo "Total avec options : "?></h2><h1><!-- price update attributes begin -->
            <?php
                if(tep_has_product_attributes($product_info['products_id'])){
                    if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
                        ?>
                        <script type="text/javascript">document.write('<s><div id="productNEWprice1"></div>\n</s>');</script>
                        <script type="text/javascript">document.write('<span class="productSpecialPrice"><div id="productNEWprice"></div>\n</span>');</script>
                        <noscript><?php echo $products_price; ?></noscript>
                        <?php } else {?>
                        <script type="text/javascript">document.write('<div id="productNEWprice"></div>\n</span>');</script>
                        <noscript><?php echo $products_price; ?></noscript>
                        <?php }
                 } else {
                     echo $products_price; } ?></h1>
            
            </td>
<br>
<br>
          <input type="hidden" name="nuPrice" value="<?php echo str_replace("$","",$nuPrice); ?>">
          <input type="hidden" name="nuPrice1" value="<?php echo str_replace("$","",$nuPrice1); ?>">
<!-- price update attributes end -->

        
          </tr>
        </table></td>
      
        
<?php


?>
          </table>
<?php
    }
// BOF: More Pics 6
    if (MOPICS_TABLE_LOCATION=='below') {
      echo '&nbsp;<br>
          <table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td align="center" class="smallText">'.$mopics_output.'</td>
            </tr>
          </table>'."\n";
    }
// EOF: More Pics 6
?>
        </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

    }
?>
      <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 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"><?php echo '<a href="mailto:[email protected]">' . tep_image_button('button_mail.gif') . '</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 //-->
    <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- right_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_right.php'); ?>
<!-- right_navigation_eof //-->
    </table></td>
  </tr>
</table>
<!-- body_eof //-->
<!-- Attrib price update  //-->
<script language="javascript">
<!--
  showPrice(cart_quantity);
  showPrice1(cart_quantity);
//-->
</script>
<!-- Attrib price update Fin //-->
<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
<br>



</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Mammouth du PHP | 672 Messages

24 déc. 2009, 16:30

bonjour,

Je suis débutant en php, j'ai un code qui ne fonctionne pas bien sous Safari l'explorateur Mac et Iphone.
Je viens vous demander un peu d'aide, si vous pouviez me corriger les erreurs qu'il y a dans cette page :
Bonjour.

- Le code php en lui même fonctionne bien ou mal, mais ça ne dépend pas du navigateur (puisqu'il est éxécuté côté serveur).

- Peux-tu préciser ce qui ne va pas ?
Messages d'erreurs, résultat non conforme aux attentes, autre ?

Petit nouveau ! | 6 Messages

26 déc. 2009, 17:11

Ca marche sur tous les navigateurs, google chrome, firefox, tous les explorers 6, 7, 8...et bien d'autres et il n'y a que sur safari qu'il ya une partie du script qui marche pas.

Oui le resultat est non conforme aux attentes, c'est une page qui est utilisé dans un site commercial, il devrait y avoir affiché le prix dans un tableau qui se modifie lorsqu'on selectionne des options.

hors sur safari les prix sont à 0.00€ des le chargement de la page et aussi lorsqu'on change d'option.

Dans le code cette partie se trouve ici :

Code : Tout sélectionner

<td><table bordercolor=blue border="3" width="100%" cellspacing="4" cellpadding="9"> <tr> <td> <h2><?php echo "Total avec options : "?></h2><h1><!-- price update attributes begin --> <?php if(tep_has_product_attributes($product_info['products_id'])){ if ($new_price = tep_get_products_special_price($product_info['products_id'])) { ?> <script type="text/javascript">document.write('<s><div id="productNEWprice1"></div>\n</s>');</script> <script type="text/javascript">document.write('<span class="productSpecialPrice"><div id="productNEWprice"></div>\n</span>');</script> <noscript><?php echo $products_price; ?></noscript> <?php } else {?> <script type="text/javascript">document.write('<div id="productNEWprice"></div>\n</span>');</script> <noscript><?php echo $products_price; ?></noscript> <?php } } else { echo $products_price; } ?></h1> </td>

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

26 déc. 2009, 17:23

Quel est l'intérêt de faire écrire le code html avec du javascript s'il n'y a rien de dynamique dedans ? Met directement le code html, cela t'évitera les problèmes de compatibilité...
            <?php
                if(tep_has_product_attributes($product_info['products_id'])){
                    if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
                        ?>
                        <s><div id="productNEWprice1"></div></s>
                       <span class="productSpecialPrice"><div id="productNEWprice"></div></span>
                        <?php } else {?>
                       <div id="productNEWprice"></div></span>
                        <?php }
                 } else {
                     echo $products_price; } 
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Petit nouveau ! | 6 Messages

26 déc. 2009, 21:23

j'ai modifié le code que tu m'as donnés mais ca n'a pas résolu le probleme, peût être que c'est ailleurs dans le code, dans celui que j'ai donné plus haut, que cela ne marche pas.

voici une capture d'ecran, une sous firefox et l'autre sous safari :

FIREFOX :
Image

SAFARI
Image

est ce que quelqu'un peux m'aider à nouveau ?

Petit nouveau ! | 6 Messages

28 déc. 2009, 20:04

j'ai aussi utilisé la console d'erreur de firefox qui m'indique ceci :

Que pour ces deux lignes de code :

Code : Tout sélectionner

showPrice(cart_quantity); showPrice1(cart_quantity);

Avertissement : Élément référencé par son ID/NAME dans le contexte global. Utilisez la propriété standard du W3C « document.getElementById() » à la place.


Peux tu me dire ce que je dois faire ? peux être que cela va regler le probleme.

merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

28 déc. 2009, 21:41

Si ton formulaire a pour id "cart_quantity", tu peux le passer en argument ainsi :

Code : Tout sélectionner

showPrice(document.getElementById('cart_quantity')); showPrice1(document.getElementById(cart_quantity'));
Si ton formulaire n'a pas d'id, mais seulement un nom tu peux également essayer avec document.cart_quantity ou document.forms['cart_quantity']
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Petit nouveau ! | 6 Messages

29 déc. 2009, 00:40

merci beaucoup, j'ai essayé mais ca na toujours pas fonctionné....tu ne vois pas quelques chose qui cloche dans mon code ?
j'ai essayé la console d'erreur de safari, mais elle n'a rien trouvé à me dire.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

30 déc. 2009, 13:28

Et si tu fais appel à ces deux fonctions dans le onload de la page au lieu de les laisser dans le code ?
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Petit nouveau ! | 6 Messages

31 déc. 2009, 00:10

Est ce que tu pourrais me montrer ce qu'il faut que je fasses, j'ai éssayé de charger les javascripts chacun dans un fichier ".js" mais cela n'a pas marché.

merci