Jump to content
ednique

[Contribution] Ship In Cart

Recommended Posts

hallo!

when i change the country - this script calculates correctly prices for shipping but not for tax! all products (tax) are not updated for the new country :(((

 

its possible to change it? i dont know how :((

Do you have your tax zones set up properly? ... do they work correctly on checkout when you create an account and buy with that country address?

Share this post


Link to post
Share on other sites

yes, everything is correct.

people who are loggedin have right tax for their selected country in the profil.

 

when i change the country with estimatator (not loggedin in peolpe) it changes only the prices for shipping cost not for other things like taxes in prodcuts price.

 

is it an mistake by me or not implement in the script? (change country for whole shop calculation)

Share this post


Link to post
Share on other sites
Justin: Thanks for replying. Yes, I see ... that's where my 'Update' button is (now) too. Thing is I only have the Country drop-down menu on that line, so there's a big empty gap across from that menu to where the 'Update' button is now ... I could do with moving the update button over to the left so it's next to the Country drop-down....

 

Is it possible?

 

tia

 

:rolleyes:

Just copy and paste this file as it removes the extra fields and only gives you the country drop-down with the button right next to it.

<?php
/*
 $Id: ship in cart,v 1.7 2003/04/06 13:21:58 ednique Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 Edwin Bekaert (edwin@ednique.com)
 
 Customized by: Linda McGrath osCommerce@WebMakers.com
 * This now handles Free Shipping for orders over $total as defined in the Admin
 * This now shows Free Shipping on Virtual products
 * Everything is contained in an infobox for easier placement.
 
 Released under the GNU General Public License

 http://forums.oscommerce.com/viewtopic.php?t=38411

 http://www.oscommerce.com/community/contributions,1094
*/
?>
<!-- shipping_estimator //-->
<script language="JavaScript">
 function shipincart_submit(sid){
   if(sid){
     document.estimator.sid.value=sid;
   }
   document.estimator.submit();
   return false;
 }
</script>
             <table align="center"><tr valign="top"><td> 

<?php
// Only do when something is in the cart
if ($cart->count_contents() > 0) {

// Could be placed in english.php
// shopping cart quotes
 define('CART_SHIPPING_OPTIONS', 'Shipping Estimate:');
 define('CART_SHIPPING_OPTIONS_LOGIN', 'Please <a href="' . tep_href_link(FILENAME_LOGIN, '', 'SSL') . '"><u>Log In</u></a>, to display your personal shipping costs.');
 define('CART_SHIPPING_METHOD_TEXT','Shipping Methods:');
 define('CART_SHIPPING_METHOD_RATES','Rates:');
 define('CART_SHIPPING_METHOD_TO','Ship to: ');
 define('CART_SHIPPING_METHOD_TO_NOLOGIN', 'Ship to: <a href="' . tep_href_link(FILENAME_LOGIN, '', 'SSL') . '"><u>Log In</u></a>');
 define('CART_SHIPPING_METHOD_FREE_TEXT','Free Shipping');
 define('CART_SHIPPING_METHOD_ALL_DOWNLOADS','- Downloads');
 define('CART_SHIPPING_METHOD_RECALCULATE','Recalculate');
 define('CART_SHIPPING_METHOD_ZIP_REQUIRED','true');
 define('CART_SHIPPING_METHOD_ADDRESS','Address:');
 define('CART_OT','Total Cost Etimate:');
 define('CART_OT_SHOW','true'); // set to false if you don't want order totals
 define('CART_SELECT','select');
 
 // shipping cost
 require('includes/classes/http_client.php'); // shipping in basket

 //if($cart->get_content_type() !== 'virtual') {
   if (tep_session_is_registered('customer_id')) {
     // user is logged in
     if (isset($HTTP_POST_VARS['address_id'])){
       // user changed address
       $sendto = $HTTP_POST_VARS['address_id'];
     }elseif (tep_session_is_registered('cart_address_id')){
       // user once changed address
       $sendto = $cart_address_id;
     }else{
       // first timer
       $sendto = $customer_default_address_id;
     }
     // set session now
     $cart_address_id = $sendto;
     tep_session_register('cart_address_id');
     // set shipping to null ! multipickjup changes address to store address...
     $shipping='';
     // include the order class (uses the sendto !)
     require(DIR_WS_CLASSES . 'order.php');
     $order = new order;
   }else{
// user not logged in !
     if (isset($HTTP_POST_VARS['country_id'])){
       // country is selected
       $country_info = tep_get_countries($HTTP_POST_VARS['country_id'],true);
       $order->delivery = array('postcode' => $HTTP_POST_VARS['zip_code'],
                                'country' => array('id' => $HTTP_POST_VARS['country_id'], 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' =>  $country_info['countries_iso_code_3']),
                                'country_id' => $HTTP_POST_VARS['country_id'],
//add state zone_id
                                'zone_id' => $HTTP_POST_VARS['state'],
                                'format_id' => tep_get_address_format_id($HTTP_POST_VARS['country_id']));
       $cart_country_id = $HTTP_POST_VARS['country_id'];
       tep_session_register('cart_country_id');
//add state zone_id
       $cart_zone = $HTTP_POST_VARS['zone_id'];
       tep_session_register('cart_zone');
       $cart_zip_code = $HTTP_POST_VARS['zip_code'];
       tep_session_register('cart_zip_code');
     }elseif (tep_session_is_registered('cart_country_id')){
       // session is available
       $country_info = tep_get_countries($cart_country_id,true);
       $order->delivery = array('postcode' => $cart_zip_code,
                                'country' => array('id' => $cart_country_id, 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' =>  $country_info['countries_iso_code_3']),
                                'country_id' => $cart_country_id,
                                'format_id' => tep_get_address_format_id($cart_country_id));
     } else {
       // first timer
       $cart_country_id = STORE_COUNTRY;
       tep_session_register('cart_country_id');
       $country_info = tep_get_countries(STORE_COUNTRY,true);
       tep_session_register('cart_zip_code');
       $order->delivery = array(//'postcode' => '',
                                'country' => array('id' => STORE_COUNTRY, 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' =>  $country_info['countries_iso_code_3']),
                                'country_id' => STORE_COUNTRY,
                                'format_id' => tep_get_address_format_id($HTTP_POST_VARS['country_id']));
     }
     // set the cost to be able to calculate free shipping
     $order->info = array('total' => $cart->show_total(), // TAX ????
                          'currency' => $currency,
                          'currency_value'=> $currencies->currencies[$currency]['value']);
   }
// weight and count needed for shipping !
   $total_weight = $cart->show_weight();
   $total_count = $cart->count_contents();
   require(DIR_WS_CLASSES . 'shipping.php');
   $shipping_modules = new shipping;
   $quotes = $shipping_modules->quote();
   $order->info['subtotal'] = $cart->total;

// set selections for displaying
   $selected_country = $order->delivery['country']['id'];
   $selected_address = $sendto;
 //}
// eo shipping cost
 
 // check free shipping based on order $total
 if ( defined('MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING') && (MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING == 'true')) {
   switch (MODULE_ORDER_TOTAL_SHIPPING_DESTINATION) {
     case 'national':
       if ($order->delivery['country_id'] == STORE_COUNTRY) $pass = true; break;
     case 'international':
       if ($order->delivery['country_id'] != STORE_COUNTRY) $pass = true; break;
     case 'both':
       $pass = true; break;
     default:
       $pass = false; break;
   }
   $free_shipping = false;
   if ( ($pass == true) && ($order->info['total'] >= MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING_OVER)) {
     $free_shipping = true;
     include(DIR_WS_LANGUAGES . $language . '/modules/order_total/ot_shipping.php');
   }
 } else {
   $free_shipping = false;
 }
 // begin shipping cost
 if(!$free_shipping && $cart->get_content_type() !== 'virtual'){
   if (tep_not_null($HTTP_POST_VARS['sid'])){
     list($module, $method) = explode('_', $HTTP_POST_VARS['sid']);
     $cart_sid = $HTTP_POST_VARS['sid'];
     tep_session_register('cart_sid');
   }elseif (tep_session_is_registered('cart_sid')){
     list($module, $method) = explode('_', $cart_sid);
   }else{
     $module="";
     $method="";
   }
   if (tep_not_null($module)){
     $selected_quote = $shipping_modules->quote($method, $module);
     if($selected_quote[0]['error'] || !tep_not_null($selected_quote[0]['methods'][0]['cost'])){
       $selected_shipping = $shipping_modules->cheapest();
       $order->info['shipping_method'] = $selected_shipping['title'];
       $order->info['shipping_cost'] = $selected_shipping['cost'];
       $order->info['total']+= $selected_shipping['cost'];
     }else{
       $order->info['shipping_method'] = $selected_quote[0]['module'].' ('.$selected_quote[0]['methods'][0]['title'].')';
       $order->info['shipping_cost'] = $selected_quote[0]['methods'][0]['cost'];
       $order->info['total']+= $selected_quote[0]['methods'][0]['cost'];
       $selected_shipping['title'] = $order->info['shipping_method'];
       $selected_shipping['cost'] = $order->info['shipping_cost'];
       $selected_shipping['id'] = $selected_quote[0]['id'].'_'.$selected_quote[0]['methods'][0]['id'];
     }
   }else{
     $selected_shipping = $shipping_modules->cheapest();
     $order->info['shipping_method'] = $selected_shipping['title'];
     $order->info['shipping_cost'] = $selected_shipping['cost'];
     $order->info['total']+= $selected_shipping['cost'];
   }
 }
// virtual products need a free shipping
 if($cart->get_content_type() == 'virtual') {
   $order->info['shipping_method'] = CART_SHIPPING_METHOD_FREE_TEXT . ' ' . CART_SHIPPING_METHOD_ALL_DOWNLOADS;
   $order->info['shipping_cost'] = 0;
 }
 if($free_shipping) {
   $order->info['shipping_method'] = MODULE_ORDER_TOTAL_SHIPPING_TITLE;
   $order->info['shipping_cost'] = 0;
 }
 $shipping=$selected_shipping;
// end of shipping cost
// end free shipping based on order total
 
 $info_box_contents = array();
 $info_box_contents[] = array('text' => CART_SHIPPING_OPTIONS);
 new infoBoxHeading($info_box_contents, false, false);
 
 $ShipTxt= tep_draw_form('estimator', tep_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL'), 'post'); //'onSubmit="return check_form();"'
 $ShipTxt.=tep_draw_hidden_field('sid', $selected_shipping['id']);
 $ShipTxt.='<table>';
 if(sizeof($quotes)) {
   if (tep_session_is_registered('customer_id')) {
     // logged in
     $ShipTxt.='<tr><td colspan="3" class="main">' . ($total_count == 1 ? ' Item: ' : ' Items: ') . $total_count . '</td></tr>';
     $addresses_query = tep_db_query("select address_book_id, entry_city as city, entry_postcode as postcode, entry_state as state, entry_zone_id as zone_id, entry_country_id as country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . $customer_id . "'");
     // only display addresses if more than 1
     if (tep_db_num_rows($addresses_query) > 1){
       while ($addresses = tep_db_fetch_array($addresses_query)) {
         $addresses_array[] = array('id' => $addresses['address_book_id'], 'text' => tep_address_format(tep_get_address_format_id($addresses['country_id']), $addresses, 0, ' ', ' '));
       }
       $ShipTxt.='<tr><td colspan="3" class="main" nowrap>' . 
                 CART_SHIPPING_METHOD_ADDRESS .' '. tep_draw_pull_down_menu('address_id', $addresses_array, $selected_address, 'onchange="return shipincart_submit(\'\');"').'</td></tr>';
     }
     $ShipTxt.='<tr valign="top"><td class="main">' . CART_SHIPPING_METHOD_TO .'</td><td colspan="2" class="main">'. tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br>') . '</td></tr>';
   } else {
// not logged in
//      $ShipTxt.=tep_output_warning(CART_SHIPPING_OPTIONS_LOGIN);
     $ShipTxt.='<tr><td colspan="3" class="main">' . ($total_count == 1 ? ' Item: ' : ' Items: ') . $total_count . /*' - Weight: ' . $total_weight .*/ '</td></tr>';
     if($cart->get_content_type() != 'virtual'){
       $ShipTxt.='<tr><td colspan="3" class="main" nowrap>' . 
                 ENTRY_COUNTRY .' '. tep_get_country_list('country_id', $selected_country,'style="width=200"');
//add state zone_id
/*        $state_array[] = array('id' => '', 'text' => 'Please Select');
       $state_query = tep_db_query("select zone_name, zone_id from " . TABLE_ZONES . " where zone_country_id = '$selected_country' order by zone_country_id DESC, zone_name");
       while ($state_values = tep_db_fetch_array($state_query)) {
         $state_array[] = array('id' => $state_values['zone_id'],
                                'text' => $state_values['zone_name']);
       }

     $ShipTxt.='  ' .ENTRY_STATE .' '. tep_draw_pull_down_menu('state',$state_array);

       if(CART_SHIPPING_METHOD_ZIP_REQUIRED == "true"){
         $ShipTxt.=' '.ENTRY_POST_CODE .' '. tep_draw_input_field('zip_code', $selected_zip, 'size="5"');
       }*/
//        $ShipTxt.=' <a href="_" onclick="return shipincart_submit(\'\');">'.CART_SHIPPING_METHOD_RECALCULATE.'</a></td></tr>';
//        $ShipTxt.=' <td><a href="_" onclick="return shipincart_submit(\'\');">'. tep_image_button('button_update_cart.gif', IMAGE_BUTTON_UPDATE_CART) . ' </a></td></td></tr>';
       $ShipTxt.='<td><a href="_" onclick="return shipincart_submit(\'\');">'. tep_image_button('button_update_cart.gif', IMAGE_BUTTON_UPDATE_CART) . ' </a></td></td></tr>';
     }
   }
   if($cart->get_content_type() == 'virtual'){
     // virtual product/download
     //$ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';
     $ShipTxt.='<tr><td class="main">' . CART_SHIPPING_METHOD_FREE_TEXT . ' ' . CART_SHIPPING_METHOD_ALL_DOWNLOADS . '</td></tr>';
   }elseif ($free_shipping==1) {
     // order $total is free
     $ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';
     $ShipTxt.='<tr><td class="main">' . sprintf(FREE_SHIPPING_DESCRIPTION, $currencies->format(MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING_OVER)) . '</td><td> </td></tr>';
   }else{
     // shipping display
     $ShipTxt.='<tr><td></td><td class="main" align="left"><b>' . CART_SHIPPING_METHOD_TEXT . '</b></td><td class="main" align="center"><b>' . CART_SHIPPING_METHOD_RATES . '</b></td></tr>';
     $ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';
     for ($i=0, $n=sizeof($quotes); $i<$n; $i++) {
       if(sizeof($quotes[$i]['methods'])==1){
         // simple shipping method
         $thisquoteid = $quotes[$i]['id'].'_'.$quotes[$i]['methods'][0]['id'];
         $ShipTxt.= '<tr class="'.$extra.'">';
         $ShipTxt.='<td class="main">'.$quotes[$i]['icon'].' </td>';
         if($quotes[$i]['error']){
           $ShipTxt.='<td colspan="2" class="main">'.$quotes[$i]['module'].' ';
           $ShipTxt.= '('.$quotes[$i]['error'].')</td></tr>';
         }else{
           if($selected_shipping['id'] == $thisquoteid){
             $ShipTxt.='<td class="main"><b>'.$quotes[$i]['module'].' ';
             $ShipTxt.= '('.$quotes[$i]['methods'][0]['title'].')</b></td><td align="right" class="main"><b>'.$currencies->format(tep_add_tax($quotes[$i]['methods'][0]['cost'], $quotes[$i]['tax'])).'<b></td><td class="main">[<a href="_"  onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';
           }else{
             $ShipTxt.='<td class="main">'.$quotes[$i]['module'].' ';
             $ShipTxt.= '('.$quotes[$i]['methods'][0]['title'].')</td><td align="right" class="main">'.$currencies->format(tep_add_tax($quotes[$i]['methods'][0]['cost'], $quotes[$i]['tax'])).'</td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';
           }
         }
       } else {
         // shipping method with sub methods (multipickup)
         for ($j=0, $n2=sizeof($quotes[$i]['methods']); $j<$n2; $j++) {
           $thisquoteid = $quotes[$i]['id'].'_'.$quotes[$i]['methods'][$j]['id'];
           $ShipTxt.= '<tr class="'.$extra.'">';
           $ShipTxt.='<td class="main">'.$quotes[$i]['icon'].' </td>';
           if($quotes[$i]['error']){
             $ShipTxt.='<td colspan="2" class="main">'.$quotes[$i]['module'].' ';
             $ShipTxt.= '('.$quotes[$i]['error'].')</td></tr>';
           }else{
             if($selected_shipping['id'] == $thisquoteid){
               $ShipTxt.='<td class="main"><b>'.$quotes[$i]['module'].' ';
               $ShipTxt.= '('.$quotes[$i]['methods'][$j]['title'].')</b></td><td align="right" class="main"><b>'.$currencies->format(tep_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax'])).'</b></td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';
             }else{
               $ShipTxt.='<td class="main">'.$quotes[$i]['module'].' ';
               $ShipTxt.= '('.$quotes[$i]['methods'][$j]['title'].')</td><td align="right" class="main">'.$currencies->format(tep_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax'])).'</td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';
             }
           }
         }
       }
     }
   }
 } 
 $ShipTxt.= '</table></form>';

 $info_box_contents = array();
 $info_box_contents[] = array('text' => $ShipTxt);
 new infoBox($info_box_contents);

 if (CART_OT_SHOW == 'true'){
   // bof damned we need the taxes if not logged in ...
   if (!tep_session_is_registered('customer_id')){
     $products = $cart->get_products();
     for ($i=0, $n=sizeof($products); $i<$n; $i++) {
       $products_tax = tep_get_tax_rate($products[$i]['tax_class_id'], $order->delivery['country_id'],$order->delivery['zone_id']);
       $products_tax_description = tep_get_tax_description($products[$i]['tax_class_id'], $order->delivery['country_id'], $order->delivery['zone_id']);
       if (DISPLAY_PRICE_WITH_TAX == 'true') {
        //Modified by Strider 42 to correct the tax calculation when a customer is not logged in
        // $tax_val = ($products[$i]['final_price']-(($products[$i]['final_price']*100)/(100+$products_tax)))*$products[$i]['quantity'];
         $tax_val = (($products[$i]['final_price']/100)*$products_tax)*$products[$i]['quantity']; 
       } else {
         $tax_val = (($products[$i]['final_price']*$products_tax)/100)*$products[$i]['quantity'];
       }
       $order->info['tax'] += $tax_val;
       $order->info['tax_groups']["$products_tax_description"] += $tax_val;
       // Modified by Strider 42 to correct the order total figure when shop displays prices with tax
       if (DISPLAY_PRICE_WITH_TAX == 'true') {
          $order->info['total'];
       } else {
       $order->info['total']+=$tax_val;
              }  
     }
   }
   // eof damned we need the taxes if not logged in (seems like less code than in order class ???)
   require(DIR_WS_CLASSES . 'order_total.php');
   $order_total_modules = new order_total;
   //echo '</td><td align="right">';
   // order total code
   $order_total_modules->process();
   
   $info_box_contents = array();
   $info_box_contents[] = array('text' => CART_OT);
 
   new infoBoxHeading($info_box_contents, false, false);
   $otTxt='<table align="right">';
   $otTxt.=$order_total_modules->output().'</table>';
   
   $info_box_contents = array();
   $info_box_contents[] = array('text' => $otTxt);
 
   new infoBox($info_box_contents);
 }
} // Only do when something is in the cart
?>
            </td></tr></table>
<!-- shipping_estimator_eof //-->

 

Will have to check on the tax thing as I have never changed any of that section since no one has ever had any problems with that portion and I know it works properly for simple tax zones such as state taxes in the US. To be honest it is kind of hard to know what people in other countries actually need being totally unfamiliar with their tax structure (kind of needs to be modified by someone who knows what the tax structure is like). You know us Americans...we only care about ourselves. :ph34r:

Share this post


Link to post
Share on other sites

Hi Justin, thanks for replying.

 

I pasted in the line (from your example) that puts the drop-down country menu and update button in to mine, but nothing at all changed onscreen... did you just remove the   from the start of that line, or did you make other changes in other parts of the file too?

 

Haven't replaced the whole file because I've commented out a lot of things I don't need in mine.

 

Thanks

 

:rolleyes:

Share this post


Link to post
Share on other sites

Commented out a few lines and removed a few &nbsps...if you don't have it I would suggest the program Beyond Compare and then you can see the differences more easily. HTH

Share this post


Link to post
Share on other sites

why i keep getting this when log in???

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in c:\program files\apache group\apache\htdocs\oscommerce\catalog\includes\functions\general.php on line 42

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in c:\program files\apache group\apache\htdocs\oscommerce\catalog\includes\functions\general.php on line 42

Share this post


Link to post
Share on other sites
why i keep getting this when log in???

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in c:\program files\apache group\apache\htdocs\oscommerce\catalog\includes\functions\general.php on line 42

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in c:\program files\apache group\apache\htdocs\oscommerce\catalog\includes\functions\general.php on line 42

From entering in a bunch of crap instead of an actual name (I really enjoyed deleting the fake accounts from a live site... thanks!) . This contribution does not touch the log in process at all, in fact you do not even need to be logged in. :wacko:

Share this post


Link to post
Share on other sites

hi!

i don't think it's a problem of each country with different kinds of tax systems.

you have to change something global in the sessions like when poeple are loggedin. i tested it with the country_id but id didnt work. i dont know which parameters are checked in the calculation for prices.

Share this post


Link to post
Share on other sites

so i think "function tep_get_tax_rate" see how osc calculates it.

it needs to write in the sessinos for non logged people the valuges for $country_id and $zone_id

 

then it could work?

Share this post


Link to post
Share on other sites

I just did the install. Seems to work only it breaks the middle cell in my cart. It forces the width of this cell, and screws up the display.

 

Any thoughts?

Share this post


Link to post
Share on other sites
yes, everything is correct.

people who are loggedin have right tax for their selected country in the profil.

 

when i change the country with estimatator (not loggedin in peolpe) it changes only the prices for shipping cost not for other things like taxes in prodcuts price.

 

is it an mistake by me or not implement in the script? (change country for whole shop calculation)

Maybe this has nothing to do with your problem ... but do you have this bit of code in shipping_estimator.php?:

 

//Modified by Strider 42 to correct the tax calculation when a customer is not logged in
        // $tax_val = ($products[$i]['final_price']-(($products[$i]['final_price']*100)/(100+$products_tax)))*$products[$i]['quantity'];
         $tax_val = (($products[$i]['final_price']/100)*$products_tax)*$products[$i]['quantity']; 
       } else {
         $tax_val = (($products[$i]['final_price']*$products_tax)/100)*$products[$i]['quantity'];
       }
       $order->info['tax'] += $tax_val;
       $order->info['tax_groups']["$products_tax_description"] += $tax_val;
       // Modified by Strider 42 to correct the order total figure when shop displays prices with tax
       if (DISPLAY_PRICE_WITH_TAX == 'true') {
          $order->info['total'];
       } else {
       $order->info['total']+=$tax_val;
              }  
     }
   }

 

(it's from the latest mod)

 

:rolleyes:

Share this post


Link to post
Share on other sites
Commented out a few lines and removed a few &nbsps...if you don't have it I would suggest the program Beyond Compare and then you can see the differences more easily. HTH

Thanks for replying Justin. I did do a diff when you posted your code but my diff program didn't find anything relevant ... which was odd, I know ... that's why I asked.

 

I'm using a Mac, so can't use Beyond Compare.

 

Which lines did you comment out... could you post them please?

 

Thanks

 

:rolleyes:

Share this post


Link to post
Share on other sites

Justin:

 

Don't know if this makes a difference, but just noticed that the code you posted was v1.7 of ShipinCart, and I have (v 1.81 modded for MS2).

 

 

:huh:

Share this post


Link to post
Share on other sites

@Pixxi

 

yes i saw it (and have it ;) and i think its just for the taxt calculation direct in the estimator.

but in the outside of it the tax isnt change or recalculated.

Share this post


Link to post
Share on other sites

I've got 2.2 (MS2) and don't have the referenced "2) go to /catalog/shopping_cart.php

find:

<?php

} else {

?>

<tr>

<td align="center" class="main"><?php echo TEXT_CART_EMPTY; ?></td>

</tr>

add just above these lines put:

</form><tr>

<td><br><?php require(DIR_WS_MODULES . 'shipping_estimator.php'); ?></td>

</tr>"

as stated in the install file. In fact my shopping_cart.php is very small. Here's what it looks like:

 

<?php
/*
 $Id: shopping_cart.php,v 1.73 2003/06/09 23:03:56 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_SHOPPING_CART);

 $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_SHOPPING_CART));

 $content = CONTENT_SHOPPING_CART;

 require(DIR_WS_TEMPLATES . TEMPLATENAME_MAIN_PAGE);

 require(DIR_WS_INCLUDES . 'application_bottom.php');
?>

 

So there's no obvious place to insert the code, or is there?????

Share this post


Link to post
Share on other sites

That is not the standard file from MS2 so I am not sure where you should "stick it". :)

Share this post


Link to post
Share on other sites

Does anyone happen to know the code fix for the Ship In Cart FedEx contribution? The output that I currently get's looks like this

 

shipincart.jpg

Share this post


Link to post
Share on other sites

I installed this contrib a day or two ago and for country it keeps reverting back to "Wallis and Futuna Islands"

here is my code for shipping_module.php

 

<?php

/*

$Id: ship in cart,v 1.82 02/01/2004 13:15:28 JGB Exp $

 

***This version is for those that use Fedex Real Time Quotes which requires the state field

If you do not use Fedex Real Time quotes you may use v1.81 of this contribution

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 Edwin Bekaert (edwin@ednique.com)

 

Customized by: Linda McGrath osCommerce@WebMakers.com

* This now handles Free Shipping for orders over $total as defined in the Admin

* This now shows Free Shipping on Virtual products

* Everything is contained in an infobox for easier placement.

 

Released under the GNU General Public License

 

http://forums.oscommerce.com/viewtopic.php?t=38411

 

http://www.oscommerce.com/community/contributions,1094

*/

?>

<!-- shipping_estimator //-->

<script language="JavaScript">

function shipincart_submit(sid){

if(sid){

document.estimator.sid.value=sid;

}

document.estimator.submit();

return false;

}

</script>

<table align="center"><tr valign="top"><td>

 

<?php

// Only do when something is in the cart

if ($cart->count_contents() > 0) {

 

// Could be placed in english.php

// shopping cart quotes

define('CART_SHIPPING_OPTIONS', 'Shipping Estimate:');

define('CART_SHIPPING_OPTIONS_LOGIN', 'Please <a href="' . tep_href_link(FILENAME_LOGIN, '', 'SSL') . '"><u>Log In</u></a>, to display your personal shipping costs.');

define('CART_SHIPPING_METHOD_TEXT','Shipping Methods:');

define('CART_SHIPPING_METHOD_RATES','Rates:');

define('CART_SHIPPING_METHOD_TO','Ship to: ');

define('CART_SHIPPING_METHOD_TO_NOLOGIN', 'Ship to: <a href="' . tep_href_link(FILENAME_LOGIN, '', 'SSL') . '"><u>Log In</u></a>');

define('CART_SHIPPING_METHOD_FREE_TEXT','Free Shipping');

define('CART_SHIPPING_METHOD_ALL_DOWNLOADS','- Downloads');

define('CART_SHIPPING_METHOD_RECALCULATE','Recalculate');

define('CART_SHIPPING_METHOD_ZIP_REQUIRED','true');

define('CART_SHIPPING_METHOD_ADDRESS','Address:');

define('CART_OT','Total Cost Etimate:');

define('CART_OT_SHOW','true'); // set to false if you don't want order totals

define('CART_SELECT','select');

 

// shipping cost

require('includes/classes/http_client.php'); // shipping in basket

 

//if($cart->get_content_type() !== 'virtual') {

if (tep_session_is_registered('customer_id')) {

// user is logged in

if (isset($HTTP_POST_VARS['address_id'])){

// user changed address

$sendto = $HTTP_POST_VARS['address_id'];

}elseif (tep_session_is_registered('cart_address_id')){

// user once changed address

$sendto = $cart_address_id;

}else{

// first timer

$sendto = $customer_default_address_id;

}

// set session now

$cart_address_id = $sendto;

tep_session_register('cart_address_id');

// set shipping to null ! multipickjup changes address to store address...

$shipping='';

// include the order class (uses the sendto !)

require(DIR_WS_CLASSES . 'order.php');

$order = new order;

}else{

// user not logged in !

if (isset($HTTP_POST_VARS['country_id'])){

// country is selected

$country_info = tep_get_countries($HTTP_POST_VARS['country_id'],true);

$order->delivery = array('postcode' => $HTTP_POST_VARS['zip_code'],

'country' => array('id' => $HTTP_POST_VARS['country_id'], 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' => $country_info['countries_iso_code_3']),

'country_id' => $HTTP_POST_VARS['country_id'],

//add state zone_id

'zone_id' => $HTTP_POST_VARS['state'],

'format_id' => tep_get_address_format_id($HTTP_POST_VARS['country_id']));

$cart_country_id = $HTTP_POST_VARS['country_id'];

tep_session_register('cart_country_id');

//add state zone_id

$cart_zone = $HTTP_POST_VARS['zone_id'];

tep_session_register('cart_zone');

$cart_zip_code = $HTTP_POST_VARS['zip_code'];

tep_session_register('cart_zip_code');

}elseif (tep_session_is_registered('cart_country_id')){

// session is available

$country_info = tep_get_countries($cart_country_id,true);

$order->delivery = array('postcode' => $cart_zip_code,

'country' => array('id' => $cart_country_id, 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' => $country_info['countries_iso_code_3']),

'country_id' => $cart_country_id,

'format_id' => tep_get_address_format_id($cart_country_id));

} else {

// first timer

$cart_country_id = STORE_COUNTRY;

tep_session_register('cart_country_id');

$country_info = tep_get_countries(STORE_COUNTRY,true);

tep_session_register('cart_zip_code');

$order->delivery = array(//'postcode' => '',

'country' => array('id' => STORE_COUNTRY, 'title' => $country_info['countries_name'], 'iso_code_2' => $country_info['countries_iso_code_2'], 'iso_code_3' => $country_info['countries_iso_code_3']),

'country_id' => STORE_COUNTRY,

'format_id' => tep_get_address_format_id($HTTP_POST_VARS['country_id']));

}

// set the cost to be able to calculate free shipping

$order->info = array('total' => $cart->show_total(), // TAX ????

'currency' => $currency,

'currency_value'=> $currencies->currencies[$currency]['value']);

}

// weight and count needed for shipping !

$total_weight = $cart->show_weight();

$total_count = $cart->count_contents();

require(DIR_WS_CLASSES . 'shipping.php');

$shipping_modules = new shipping;

$quotes = $shipping_modules->quote();

$order->info['subtotal'] = $cart->total;

 

// set selections for displaying

$selected_country = $order->delivery['country']['id'];

$selected_address = $sendto;

//}

// eo shipping cost

 

// check free shipping based on order $total

if ( defined('MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING') && (MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING == 'true')) {

switch (MODULE_ORDER_TOTAL_SHIPPING_DESTINATION) {

case 'national':

if ($order->delivery['country_id'] == STORE_COUNTRY) $pass = true; break;

case 'international':

if ($order->delivery['country_id'] != STORE_COUNTRY) $pass = true; break;

case 'both':

$pass = true; break;

default:

$pass = false; break;

}

$free_shipping = false;

if ( ($pass == true) && ($order->info['total'] >= MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING_OVER)) {

$free_shipping = true;

include(DIR_WS_LANGUAGES . $language . '/modules/order_total/ot_shipping.php');

}

} else {

$free_shipping = false;

}

// begin shipping cost

if(!$free_shipping && $cart->get_content_type() !== 'virtual'){

if (tep_not_null($HTTP_POST_VARS['sid'])){

list($module, $method) = explode('_', $HTTP_POST_VARS['sid']);

$cart_sid = $HTTP_POST_VARS['sid'];

tep_session_register('cart_sid');

}elseif (tep_session_is_registered('cart_sid')){

list($module, $method) = explode('_', $cart_sid);

}else{

$module="";

$method="";

}

if (tep_not_null($module)){

$selected_quote = $shipping_modules->quote($method, $module);

if($selected_quote[0]['error'] || !tep_not_null($selected_quote[0]['methods'][0]['cost'])){

$selected_shipping = $shipping_modules->cheapest();

$order->info['shipping_method'] = $selected_shipping['title'];

$order->info['shipping_cost'] = $selected_shipping['cost'];

$order->info['total']+= $selected_shipping['cost'];

}else{

$order->info['shipping_method'] = $selected_quote[0]['module'].' ('.$selected_quote[0]['methods'][0]['title'].')';

$order->info['shipping_cost'] = $selected_quote[0]['methods'][0]['cost'];

$order->info['total']+= $selected_quote[0]['methods'][0]['cost'];

$selected_shipping['title'] = $order->info['shipping_method'];

$selected_shipping['cost'] = $order->info['shipping_cost'];

$selected_shipping['id'] = $selected_quote[0]['id'].'_'.$selected_quote[0]['methods'][0]['id'];

}

}else{

$selected_shipping = $shipping_modules->cheapest();

$order->info['shipping_method'] = $selected_shipping['title'];

$order->info['shipping_cost'] = $selected_shipping['cost'];

$order->info['total']+= $selected_shipping['cost'];

}

}

// virtual products need a free shipping

if($cart->get_content_type() == 'virtual') {

$order->info['shipping_method'] = CART_SHIPPING_METHOD_FREE_TEXT . ' ' . CART_SHIPPING_METHOD_ALL_DOWNLOADS;

$order->info['shipping_cost'] = 0;

}

if($free_shipping) {

$order->info['shipping_method'] = MODULE_ORDER_TOTAL_SHIPPING_TITLE;

$order->info['shipping_cost'] = 0;

}

$shipping=$selected_shipping;

// end of shipping cost

// end free shipping based on order total

 

$info_box_contents = array();

$info_box_contents[] = array('text' => CART_SHIPPING_OPTIONS);

new infoBoxHeading($info_box_contents, false, false);

 

$ShipTxt= tep_draw_form('estimator', tep_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL'), 'post'); //'onSubmit="return check_form();"'

$ShipTxt.=tep_draw_hidden_field('sid', $selected_shipping['id']);

$ShipTxt.='<table>';

if(sizeof($quotes)) {

if (tep_session_is_registered('customer_id')) {

// logged in

$ShipTxt.='<tr><td colspan="3" class="main">' . ($total_count == 1 ? ' Item: ' : ' Items: ') . $total_count . '</td></tr>';

$addresses_query = tep_db_query("select address_book_id, entry_city as city, entry_postcode as postcode, entry_state as state, entry_zone_id as zone_id, entry_country_id as country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . $customer_id . "'");

// only display addresses if more than 1

if (tep_db_num_rows($addresses_query) > 1){

while ($addresses = tep_db_fetch_array($addresses_query)) {

$addresses_array[] = array('id' => $addresses['address_book_id'], 'text' => tep_address_format(tep_get_address_format_id($addresses['country_id']), $addresses, 0, ' ', ' '));

}

$ShipTxt.='<tr><td colspan="3" class="main" nowrap>' .

CART_SHIPPING_METHOD_ADDRESS .' '. tep_draw_pull_down_menu('address_id', $addresses_array, $selected_address, 'onchange="return shipincart_submit(\'\');"').'</td></tr>';

}

$ShipTxt.='<tr valign="top"><td class="main">' . CART_SHIPPING_METHOD_TO .'</td><td colspan="2" class="main">'. tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br>') . '</td></tr>';

} else {

// not logged in

// $ShipTxt.=tep_output_warning(CART_SHIPPING_OPTIONS_LOGIN);

$ShipTxt.='<tr><td colspan="3" class="main">' . ($total_count == 1 ? ' Item: ' : ' Items: ') . $total_count . /*' - Weight: ' . $total_weight .*/ '</td></tr>';

if($cart->get_content_type() != 'virtual'){

$ShipTxt.='<tr><td colspan="3" class="main" nowrap>' .

ENTRY_COUNTRY .' '. tep_get_country_list('country_id', $selected_country,'style="width=200"');

//add state zone_id

$state_array[] = array('id' => '', 'text' => 'Please Select');

$state_query = tep_db_query("select zone_name, zone_id from " . TABLE_ZONES . " where zone_country_id = '$selected_country' order by zone_country_id DESC, zone_name");

while ($state_values = tep_db_fetch_array($state_query)) {

$state_array[] = array('id' => $state_values['zone_id'],

'text' => $state_values['zone_name']);

}

 

$ShipTxt.=' <p> ' .ENTRY_STATE .' '. tep_draw_pull_down_menu('state',$state_array);

 

if(CART_SHIPPING_METHOD_ZIP_REQUIRED == "true"){

$ShipTxt.='<p> '.ENTRY_POST_CODE .' '. tep_draw_input_field('zip_code', $selected_zip, 'size="5"');

}

// $ShipTxt.=' <a href="_" onclick="return shipincart_submit(\'\');">'.CART_SHIPPING_METHOD_RECALCULATE.'</a></td></tr>';

$ShipTxt.=' <td><a href="_" onclick="return shipincart_submit(\'\');">'. tep_image_button('button_update_cart.gif', IMAGE_BUTTON_UPDATE_CART) . ' </a></td></td></tr>';

}

}

if($cart->get_content_type() == 'virtual'){

// virtual product/download

//$ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';

$ShipTxt.='<tr><td class="main">' . CART_SHIPPING_METHOD_FREE_TEXT . ' ' . CART_SHIPPING_METHOD_ALL_DOWNLOADS . '</td></tr>';

}elseif ($free_shipping==1) {

// order $total is free

$ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';

$ShipTxt.='<tr><td class="main">' . sprintf(FREE_SHIPPING_DESCRIPTION, $currencies->format(MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING_OVER)) . '</td><td> </td></tr>';

}else{

// shipping display

$ShipTxt.='<tr><td></td><td class="main" align="left"><b>' . CART_SHIPPING_METHOD_TEXT . '</b></td><td class="main" align="center"><b>' . CART_SHIPPING_METHOD_RATES . '</b></td></tr>';

$ShipTxt.='<tr><td colspan="3" class="main">'.tep_draw_separator().'</td></tr>';

for ($i=0, $n=sizeof($quotes); $i<$n; $i++) {

if(sizeof($quotes[$i]['methods'])==1){

// simple shipping method

$thisquoteid = $quotes[$i]['id'].'_'.$quotes[$i]['methods'][0]['id'];

$ShipTxt.= '<tr class="'.$extra.'">';

$ShipTxt.='<td class="main">'.$quotes[$i]['icon'].' </td>';

if($quotes[$i]['error']){

$ShipTxt.='<td colspan="2" class="main">'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['error'].')</td></tr>';

}else{

if($selected_shipping['id'] == $thisquoteid){

$ShipTxt.='<td class="main"><b>'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['methods'][0]['title'].')</b></td><td align="right" class="main"><b>'.$currencies->format(tep_add_tax($quotes[$i]['methods'][0]['cost'], $quotes[$i]['tax'])).'<b></td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';

}else{

$ShipTxt.='<td class="main">'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['methods'][0]['title'].')</td><td align="right" class="main">'.$currencies->format(tep_add_tax($quotes[$i]['methods'][0]['cost'], $quotes[$i]['tax'])).'</td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';

}

}

} else {

// shipping method with sub methods (multipickup)

for ($j=0, $n2=sizeof($quotes[$i]['methods']); $j<$n2; $j++) {

$thisquoteid = $quotes[$i]['id'].'_'.$quotes[$i]['methods'][$j]['id'];

$ShipTxt.= '<tr class="'.$extra.'">';

$ShipTxt.='<td class="main">'.$quotes[$i]['icon'].' </td>';

if($quotes[$i]['error']){

$ShipTxt.='<td colspan="2" class="main">'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['error'].')</td></tr>';

}else{

if($selected_shipping['id'] == $thisquoteid){

$ShipTxt.='<td class="main"><b>'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['methods'][$j]['title'].')</b></td><td align="right" class="main"><b>'.$currencies->format(tep_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax'])).'</b></td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';

}else{

$ShipTxt.='<td class="main">'.$quotes[$i]['module'].' ';

$ShipTxt.= '('.$quotes[$i]['methods'][$j]['title'].')</td><td align="right" class="main">'.$currencies->format(tep_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax'])).'</td><td class="main">[<a href="_" onclick="return shipincart_submit(\''.$thisquoteid.'\');">'.CART_SELECT.'</a>]</td></tr>';

}

}

}

}

}

}

}

$ShipTxt.= '</table></form>';

 

$info_box_contents = array();

$info_box_contents[] = array('text' => $ShipTxt);

new infoBox($info_box_contents);

 

if (CART_OT_SHOW == 'true'){

// bof damned we need the taxes if not logged in ...

if (!tep_session_is_registered('customer_id')){

$products = $cart->get_products();

for ($i=0, $n=sizeof($products); $i<$n; $i++) {

$products_tax = tep_get_tax_rate($products[$i]['tax_class_id'], $order->delivery['country_id'],$order->delivery['zone_id']);

$products_tax_description = tep_get_tax_description($products[$i]['tax_class_id'], $order->delivery['country_id'], $order->delivery['zone_id']);

if (DISPLAY_PRICE_WITH_TAX == 'true') {

//Modified by Strider 42 to correct the tax calculation when a customer is not logged in

// $tax_val = ($products[$i]['final_price']-(($products[$i]['final_price']*100)/(100+$products_tax)))*$products[$i]['quantity'];

$tax_val = (($products[$i]['final_price']/100)*$products_tax)*$products[$i]['quantity'];

} else {

$tax_val = (($products[$i]['final_price']*$products_tax)/100)*$products[$i]['quantity'];

}

$order->info['tax'] += $tax_val;

$order->info['tax_groups']["$products_tax_description"] += $tax_val;

// Modified by Strider 42 to correct the order total figure when shop displays prices with tax

if (DISPLAY_PRICE_WITH_TAX == 'true') {

$order->info['total'];

} else {

$order->info['total']+=$tax_val;

}

}

}

// eof damned we need the taxes if not logged in (seems like less code than in order class ???)

require(DIR_WS_CLASSES . 'order_total.php');

$order_total_modules = new order_total;

//echo '</td><td align="right">';

// order total code

$order_total_modules->process();

 

$info_box_contents = array();

$info_box_contents[] = array('text' => CART_OT);

 

new infoBoxHeading($info_box_contents, false, false);

$otTxt='<table align="right">';

$otTxt.=$order_total_modules->output().'</table>';

 

$info_box_contents = array();

$info_box_contents[] = array('text' => $otTxt);

 

new infoBox($info_box_contents);

}

} // Only do when something is in the cart

?>

</td></tr></table>

<!-- shipping_estimator_eof //-->

 

the site is www.graveyardrecords.com/index.php

Share this post


Link to post
Share on other sites

Ive also got this error

Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

Screenshot

Ive tried restoring to an earlier backup but that also has the problem, & i cant go further back as i'l have to reinstall numerous mods :(

 

looking through the posts, i havnt moved the zip code field just renamed it to post code so dont think its that? It seems that the customer address isnt being pulled from the database & so not inserting into the shipping estimator. If i add a 2nd address for the customer, & go back to the cart the error is still there - but as soon as i choose the other address ive just created from the drop down menu in the shipping estimator the page refreshes & all is fine. I can then change back to the previous address & again is fine. I havnt deleted any of the countries in Admin, im really stuck! Ive probably had this error for a while, & as it only shows up for newly created accounts means i never seen it before

Share this post


Link to post
Share on other sites

Martin,

 

Just another thought ...

 

Maybe also check you've not changed any 'zip_code's to 'postcode' where you shouldn't have ... text and variables being different animals ...

 

 

:rolleyes:

Share this post


Link to post
Share on other sites
Ive also got this error
Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

Screenshot

Ive tried restoring to an earlier backup but that also has the problem, & i cant go further back as i'l have to reinstall numerous mods :(

 

looking through the posts, i havnt moved the zip code field just renamed it to post code so dont think its that? It seems that the customer address isnt being pulled from the database & so not inserting into the shipping estimator. If i add a 2nd address for the customer, & go back to the cart the error is still there - but as soon as i choose the other address ive just created from the drop down menu in the shipping estimator the page refreshes & all is fine. I can then change back to the previous address & again is fine. I havnt deleted any of the countries in Admin, im really stuck! Ive probably had this error for a while, & as it only shows up for newly created accounts means i never seen it before

Hi, I'm also now getting this same error. I haven't modified general.php and im running MS2. This hasnt happened in the last 3 days but now is poping up when im logged in with a test account.

 

Anyone know a fix for this?

Share this post


Link to post
Share on other sites
Ive also got this error
Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/custom-p/public_html/includes/functions/general.php on line 42

Screenshot

Ive tried restoring to an earlier backup but that also has the problem, & i cant go further back as i'l have to reinstall numerous mods :(

 

looking through the posts, i havnt moved the zip code field just renamed it to post code so dont think its that? It seems that the customer address isnt being pulled from the database & so not inserting into the shipping estimator. If i add a 2nd address for the customer, & go back to the cart the error is still there - but as soon as i choose the other address ive just created from the drop down menu in the shipping estimator the page refreshes & all is fine. I can then change back to the previous address & again is fine. I havnt deleted any of the countries in Admin, im really stuck! Ive probably had this error for a while, & as it only shows up for newly created accounts means i never seen it before

Hi, I'm also now getting this same error. I haven't modified general.php and im running MS2. This hasnt happened in the last 3 days but now is poping up when im logged in with a test account.

 

Anyone know a fix for this?

Got this message again, but this time I found out what the problem was. When the users postal code doesnt match their city state it gives you an error.

 

Anyone know a fix for this, or a way to ouput a msg notifying the user that his info isn't coming up correct on fedex api.

 

Thanks.

Share this post


Link to post
Share on other sites
I just did the install.  Seems to work only it breaks the middle cell in my cart.  It forces the width of this cell, and screws up the display. 

 

Any thoughts?

I am having the same problem. My left and right boxes are now pushed off the side of the screen when there is something in my cart. Does anyone know where and how to fix it? I am running a new install 2.2ms2

thanks

Dappa Dan :unsure:


I want to believe.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×