Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Error during checkout........


joannemojo

Recommended Posts

I'm reinstalling my store using STS. Basically doing it all again to make sure that I don't have conflicts with already installed mods. I have just tried to buy a product (to see if money order comes up as Personal Cheque which I changed it to) and got the following error:

 

Fatal error: Call to a member function call_api() on a non-object in /home/spidersm/public_html/store/checkout_process.php on line 102

 

Anyone know what it's about? No order appears in admin when the error occurs.

Link to comment
Share on other sites

Can you post the lines from checkout_process.php where call_api() is.

Post about 10 lines either side of line 102.

 

I didn't find any references to 'call_api' in my osCommerce installation nor is the function listed in php documentation.

Link to comment
Share on other sites

Can you post the lines from checkout_process.php where call_api() is.

Post about 10 lines either side of line 102.

 

I didn't find any references to 'call_api' in my osCommerce installation nor is the function listed in php documentation.

 

I had the same problem and this solved it:

 

Find this code in checkout_process.php

// {{ buySAFE Module
 $buysafe_cart_id = MODULE_BUYSAFE_BUYSAFE_CART_PREFIX . '-' . tep_session_id() . (tep_count_customer_orders()-1);
 $checkout_params = array('WantsBond' => ($WantsBond ? $WantsBond : 'false'), 'orders_id' => $insert_id, 'buysafe_cart_id' => $buysafe_cart_id);
 $checkout_result = $buysafe_module->call_api('SetShoppingCartCheckout', $checkout_params);
 if (is_array($checkout_result) && $checkout_result['IsBuySafeEnabled'] == 'true')
 {
$update_data_array = array('buysafe_cart_id' => $buysafe_cart_id,
						   'buysafe_client_ip' => getenv('REMOTE_ADDR'),
						   'buysafe_session_id' => tep_session_id());
tep_db_perform(TABLE_ORDERS, $update_data_array, 'update', "orders_id = '" . (int)$insert_id . "'");
 }
// }}

And comment it out like this (by wrapping the code with /* and */:

// {{ buySAFE Module
/*   $buysafe_cart_id = MODULE_BUYSAFE_BUYSAFE_CART_PREFIX . '-' . tep_session_id() . (tep_count_customer_orders()-1);
 $checkout_params = array('WantsBond' => ($WantsBond ? $WantsBond : 'false'), 'orders_id' => $insert_id, 'buysafe_cart_id' => $buysafe_cart_id);
 $checkout_result = $buysafe_module->call_api('SetShoppingCartCheckout', $checkout_params);
 if (is_array($checkout_result) && $checkout_result['IsBuySafeEnabled'] == 'true')
 {
$update_data_array = array('buysafe_cart_id' => $buysafe_cart_id,
						   'buysafe_client_ip' => getenv('REMOTE_ADDR'),
						   'buysafe_session_id' => tep_session_id());
tep_db_perform(TABLE_ORDERS, $update_data_array, 'update', "orders_id = '" . (int)$insert_id . "'");
 }
*/// }}

Hope it helps.

Jade

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...