austenlennon 0 Posted May 11, 2013 Hi, I use PayPoint on my site.... payPoint works fine until you press 'Authorise' then I get this message. The payment and order goes through but the page goes here.... Can anyone help please? Deprecated: Function split() is deprecated in /homepages/17/d163184393/htdocs/commerce/includes/modules/payment/paypoint_secpay.php on line 152 Warning: Cannot modify header information - headers already sent by (output started at /homepages/17/d163184393/htdocs/commerce/includes/modules/payment/paypoint_secpay.php:152) in/homepages/17/d163184393/htdocs/commerce/includes/functions/general.php on line 50 Share this post Link to post Share on other sites
austenlennon 0 Posted May 11, 2013 By the way - I tested the pages and there are no empty spaces on either of the page mentioned in the error message.... I also tried replacing the paypoint_secpay.php with a new version but it still gives the same message... Share this post Link to post Share on other sites
♥multimixer 325 Posted May 11, 2013 The error is telling you what is going on: Function split() is deprecated . You can also check here What to do? You can either use explode() or preg_split() , I guess that explode will do the job How does your line 152 of file includes/modules/payment/paypoint_secpay.php look like? My community profile | Template system for osCommerce - New: Responsive | Feedback channel Share this post Link to post Share on other sites
austenlennon 0 Posted May 12, 2013 Multimixer - I very much appreciate your help. One only appreciates how little one knows when one is talking to someone who knows a lot. :-) (I sound like the Queen there) I have no idea what you said in your last post.... I am a complete novice... :-) but here is the code from line 147 down.... function before_process() { global $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_SERVER_VARS; if ( ($HTTP_GET_VARS['valid'] == 'true') && ($HTTP_GET_VARS['code'] == 'A') && !empty($HTTP_GET_VARS['auth_code']) && empty($HTTP_GET_VARS['resp_code']) && !empty($HTTP_GET_VARS[tep_session_name()]) ) { $DIGEST_PASSWORD = MODULE_PAYMENT_PAYPOINT_SECPAY_READERS_DIGEST; list($REQUEST_URI, $CHECK_SUM) = split('hash=', $HTTP_SERVER_VARS['REQUEST_URI']); if ($HTTP_GET_VARS['hash'] != md5($REQUEST_URI . $DIGEST_PASSWORD)) { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_GET_VARS[tep_session_name()] . '&payment_error=' . $this->code ."&detail=hash", 'SSL', false, false)); } } else { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_GET_VARS[tep_session_name()] . '&payment_error=' . $this->code, 'SSL', false, false)); } } function after_process() { return false; } function get_error() { global $HTTP_GET_VARS; if ($HTTP_GET_VARS['code'] == 'N') { $error = MODULE_PAYMENT_PAYPOINT_SECPAY_TEXT_ERROR_MESSAGE_N; } elseif ($HTTP_GET_VARS['code'] == 'C') { $error = MODULE_PAYMENT_PAYPOINT_SECPAY_TEXT_ERROR_MESSAGE_C; } else { $error = MODULE_PAYMENT_PAYPOINT_SECPAY_TEXT_ERROR_MESSAGE; } return array('title' => MODULE_PAYMENT_PAYPOINT_SECPAY_TEXT_ERROR, 'error' => $error); } Share this post Link to post Share on other sites
austenlennon 0 Posted May 12, 2013 Hold the fort - I fixed it. Some time ago I set my 1and1 server to php 5.4 - I thought I would reset it back down to 5.2 and low and behold it worked! wow..... thanks again for your help Multimix....... Share this post Link to post Share on other sites
Xpajun 67 Posted October 26, 2013 (edited) Hold the fort - I fixed it. Some time ago I set my 1and1 server to php 5.4 - I thought I would reset it back down to 5.2 and low and behold it worked! wow..... thanks again for your help Multimix....... That may fix it - but very temporately (deprecated functions are done for a reason) but it is not the answer. George, lines 150 - 160 read: if ( ($HTTP_GET_VARS['valid'] == 'true') && ($HTTP_GET_VARS['code'] == 'A') && !empty($HTTP_GET_VARS['auth_code']) && empty($HTTP_GET_VARS['resp_code']) && !empty($HTTP_GET_VARS[tep_session_name()]) ) { $DIGEST_PASSWORD = MODULE_PAYMENT_PAYPOINT_SECPAY_READERS_DIGEST; list($REQUEST_URI, $CHECK_SUM) = split('hash=', $HTTP_SERVER_VARS['REQUEST_URI']); if ($HTTP_GET_VARS['hash'] != md5($REQUEST_URI . $DIGEST_PASSWORD)) { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_GET_VARS[tep_session_name()] . '&payment_error=' . $this->code ."&detail=hash", 'SSL', false, false)); } } else { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_GET_VARS[tep_session_name()] . '&payment_error=' . $this->code, 'SSL', false, false)); } } explode does work as you suggest but I got a weird invoice with it: Waiting for Monday now to check with PayPoint tech staff Edited October 26, 2013 by Xpajun Currently...: Working with osCommerce 2.3.1 Now working with Phoenix Add-Ons so far Installed: Not all of these installed yet on Phoenix - some are and the rest will be Add date and order number to invoice and packing slip, Products Cycle Slideshow, Detailed Monthly Sales, Holiday Settings, Tracking Module for 2.3 Share this post Link to post Share on other sites
Xpajun 67 Posted October 26, 2013 (edited) Forget the latter half of my above post - the weird invoice is due to a customer discount that doesn't work properly :rolleyes: At about line 152 of paypoint_secpay.php FIND: list($REQUEST_URI, $CHECK_SUM) = split('hash=', $HTTP_SERVER_VARS['REQUEST_URI']); REPLACE WITH: list($REQUEST_URI, $CHECK_SUM) = explode('hash=', $HTTP_SERVER_VARS['REQUEST_URI']); Edited October 26, 2013 by Xpajun Currently...: Working with osCommerce 2.3.1 Now working with Phoenix Add-Ons so far Installed: Not all of these installed yet on Phoenix - some are and the rest will be Add date and order number to invoice and packing slip, Products Cycle Slideshow, Detailed Monthly Sales, Holiday Settings, Tracking Module for 2.3 Share this post Link to post Share on other sites