ttt2 Posted January 23, 2004 Share Posted January 23, 2004 (edited) I installed the cvv 1.24. Seems to work fine during test order. It asked for CVV and order process finished without errors. The problem is in Admin. When I look up the order in Admin the CVV is blank. Payment Method: Credit Card Credit Card Type: Visa CVV Number: *delete image here* Credit Card Owner: Credit Card Number: 4111111111111111 Credit Card Expires: 0104 I'm a bit confuse on the sql part: ***If you have not altered your Configuration Table in the database: INSERT INTO configuration VALUES ( 185, 'CVV2 Number', 'CVVNUMBER_MIN_LENGTH', 3, 'Minimum Length of CVV2 Number', 2, 17, '2004-01-08 10:30:00', '2004-01-08 10:30:00', NULL , NULL ); ***If you have made some alterations to the Configuration Table you will need to change the '185' and '17' to represent the next configuration_id and sort_order(group 2) for your particular database. Now, I don't know anything on SQL and not sure what 185 and 17 represent. Maybe this is where the problem is. Someone please help. Thanks Edited January 23, 2004 by ttt2 Quote Link to comment Share on other sites More sharing options...
Guest Posted January 23, 2004 Share Posted January 23, 2004 Does the CVV number appear in your database in the ORDERS table? Also it looks like you have the CVV number listed in a different spot than it is supposed to be in the contribution...it should be the last item below the expiration date. Not that you could not put it elsewhere, but if you just cut and paste from the text file in the contribution and place it in a spot other than where specified a semi-colon or something could be in the wrong place. Quote Link to comment Share on other sites More sharing options...
ttt2 Posted January 23, 2004 Author Share Posted January 23, 2004 I fixed the problems. For Admin I decided to replace with your files to make sure its not Admin problem. That fixed it. As for the CVV not save to database, it was a copy/paste mistake. The ";" as you mention was the problem. I can't believe I screwed up. I check over the files 4 times already. Anyways, thanks for all your help. Quote Link to comment Share on other sites More sharing options...
murasaki Posted February 6, 2004 Share Posted February 6, 2004 Since, I'm new to mysql, took me a while to figure out how to use the right numbers as specified when installing CVV 1.24. For those who went got lost on the instruction for "INSERT INTO configuration VALUES......", here is what you can do step by step: Login to cPanel (if your host provide you one), select phpMyAdmin. On right window, click on Databases Click on your osCommerce database name Find under the table column the row configuration Click on Browse link of that row Click on the 3rd column table header named configuration_id (twice to change the sort order) Write down the last configuration_id number (ie. 242). Go back to your instruction, change 185 to 243 and 186 to 244 Now open another browser window and login to your osCommerce admin Select Configuration Select Minimum Values Start counting the rows (should be about 16 if nothing changes) So 17 is for the 17th row that will be added Select Maximum Values Start counting the rows (mine is 19) So 20 is what I should edit to Now go back to your phpMyAdmin window Click on configuration from the left window Find the box: Run SQL query/queries on database yourosCommercedatabasename Paste the edit instructions and hit go for each instruction Hope this help for fellow new users. :lol: Quote Link to comment Share on other sites More sharing options...
webshark Posted August 26, 2004 Share Posted August 26, 2004 I installed the cvv 1.24. Seems to work fine during test order. It asked for CVV and order process finished without errors. The problem is in Admin. When I look up the order in Admin the CVV is blank. Payment Method: Credit Card Credit Card Type: Visa CVV Number: *delete image here* Credit Card Owner: Credit Card Number: 4111111111111111 Credit Card Expires: 0104 I'm a bit confuse on the sql part: ***If you have not altered your Configuration Table in the database: INSERT INTO configuration VALUES ( 185, 'CVV2 Number', 'CVVNUMBER_MIN_LENGTH', 3, 'Minimum Length of CVV2 Number', 2, 17, '2004-01-08 10:30:00', '2004-01-08 10:30:00', NULL , NULL ); ***If you have made some alterations to the Configuration Table you will need to change the '185' and '17' to represent the next configuration_id and sort_order(group 2) for your particular database. Now, I don't know anything on SQL and not sure what 185 and 17 represent. Maybe this is where the problem is. Someone please help. Thanks I am also having the same problem CVV number not showing up in the admin. Check the tables in phpmyadmin the value are also not in the database itself ... Anyone can help ? Quote Link to comment Share on other sites More sharing options...
webbqt Posted July 11, 2006 Share Posted July 11, 2006 I've looked and looked to find this problem, but can't. Help would be very appreciated! When I go to Admin/Payments Modules, I get this above the regular stuff: (in case it makes a difference, I installed Edit Orders first) MENT_CC_TEXT_TITLE; $this->description = MODULE_PAYMENT_CC_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_CC_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_CC_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_CC_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_CC_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); } // class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_CC_ZONE > 0) ) { $check_flag = false; $check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_PAYMENT_CC_ZONE . "' and zone_country_id = '" . $order->billing['country']['id'] . "' order by zone_id"); while ($check = tep_db_fetch_array($check_query)) { if ($check['zone_id'] < 1) { $check_flag = true; break; } elseif ($check['zone_id'] == $order->billing['zone_id']) { $check_flag = true; break; } } if ($check_flag == false) { $this->enabled = false; } } } // begin cvv contribution function javascript_validation() { $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.cc_number.value;' . "\n" . ' var cvvnumber = document.checkout_payment.cvvnumber.value;' . "\n" . ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_OWNER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' if (cc_number == "" || cc_number.length < ' . CC_NUMBER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' if (cvvnumber.length > ' . CVVNUMBER_MAX_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . MODULE_PAYMENT_CC_TEXT_JS_MAXCVVNUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' if (cvvnumber == ""|| cvvnumber.length < ' . CVVNUMBER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . MODULE_PAYMENT_CC_TEXT_JS_CVVNUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; return $js; } // end cvv contribution function selection() { global $order; for ($i=1; $i<13; $i++) { $expires_month[] = array('id' => sprintf('%02d', $i), 'text' => strftime('%B',mktime(0,0,0,$i,1,2000))); } $today = getdate(); for ($i=$today['year']; $i < $today['year']+10; $i++) { $expires_year[] = array('id' => strftime('%y',mktime(0,0,0,1,1,$i)), 'text' => strftime('%Y',mktime(0,0,0,1,1,$i))); } $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'])), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number')), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year)))); // begin cvv contribution array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVVNUMBER . ' ' .'' . TEXT_CVV_LINK . '', 'field' => tep_draw_input_field('cvvnumber'); // end cvv contribution return $selection; } function pre_confirmation_check() { global $HTTP_POST_VARS; include(DIR_WS_CLASSES . 'cc_validation.php'); // begin cvv contribution $cc_validation = new cc_validation(); $result = $cc_validation->validate($HTTP_POST_VARS['cc_number'], $HTTP_POST_VARS['cc_expires_month'], $HTTP_POST_VARS['cc_expires_year'], $HTTP_POST_VARS['cvvnumber']); // end cvv contribution $error = ''; switch ($result) { case -1: $error = sprintf(TEXT_CCVAL_ERROR_UNKNOWN_CARD, substr($cc_validation->cc_number, 0, 4)); break; case -2: case -3: case -4: $error = TEXT_CCVAL_ERROR_INVALID_DATE; break; case false: $error = TEXT_CCVAL_ERROR_INVALID_NUMBER; break; } if ( ($result == false) || ($result < 1) ) { $payment_error_return = 'payment_error=' . $this->code . '&error=' . urlencode($error) . '&cc_owner=' . urlencode($HTTP_POST_VARS['cc_owner']) . '&cc_expires_month=' . $HTTP_POST_VARS['cc_expires_month'] . '&cc_expires_year=' . $HTTP_POST_VARS['cc_expires_year']; tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, $payment_error_return, 'SSL', true, false)); } $this->cc_card_type = $cc_validation->cc_type; $this->cc_card_number = $cc_validation->cc_number; } function confirmation() { global $HTTP_POST_VARS; $confirmation = array('title' => $this->title . ': ' . $this->cc_card_type, 'fields' => array(array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => $HTTP_POST_VARS['cc_owner']), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => substr($this->cc_card_number, 0, 4) . str_repeat('X', (strlen($this->cc_card_number) - 8)) . substr($this->cc_card_number, -4)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0,0,0,$HTTP_POST_VARS['cc_expires_month'], 1, '20' . $HTTP_POST_VARS['cc_expires_year']))), // begin cvv contribution array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVVNUMBER, 'field' => $HTTP_POST_VARS['cvvnumber']))); // end cvv contribution return $confirmation; } function process_button() { global $HTTP_POST_VARS; //begin cvv contribution $process_button_string = tep_draw_hidden_field('cc_owner', $HTTP_POST_VARS['cc_owner']) . tep_draw_hidden_field('cc_expires', $HTTP_POST_VARS['cc_expires_month'] . $HTTP_POST_VARS['cc_expires_year']) . tep_draw_hidden_field('cc_type', $this->cc_card_type) . tep_draw_hidden_field('cc_number', $this->cc_card_number) . tep_draw_hidden_field('cvvnumber', $this->cvvnumber); // end cvv contribution return $process_button_string; } function before_process() { global $HTTP_POST_VARS, $order; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $len = strlen($HTTP_POST_VARS['cc_number']); $this->cc_middle = substr($HTTP_POST_VARS['cc_number'], 4, ($len-8)); $order->info['cc_number'] = substr($HTTP_POST_VARS['cc_number'], 0, 4) . str_repeat('X', (strlen($HTTP_POST_VARS['cc_number']) - 8)) . substr($HTTP_POST_VARS['cc_number'], -4); } } function after_process() { global $insert_id; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $message = 'Order #' . $insert_id . "\n\n" . 'Middle: ' . $this->cc_middle . "\n\n"; tep_mail('', MODULE_PAYMENT_CC_EMAIL, 'Extra Order Info: #' . $insert_id, $message, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); } } function get_error() { global $HTTP_GET_VARS; $error = array('title' => MODULE_PAYMENT_CC_TEXT_ERROR, 'error' => stripslashes(urldecode($HTTP_GET_VARS['error']))); return $error; } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_CC_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Credit Card Module', 'MODULE_PAYMENT_CC_STATUS', 'True', 'Do you want to accept credit card payments?', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Split Credit Card E-Mail Address', 'MODULE_PAYMENT_CC_EMAIL', '', 'If an e-mail address is entered, the middle digits of the credit card number will be sent to the e-mail address (the outside digits are stored in the database with the middle digits censored)', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort order of display.', 'MODULE_PAYMENT_CC_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0' , now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Payment Zone', 'MODULE_PAYMENT_CC_ZONE', '0', 'If a zone is selected, only enable this payment method for that zone.', '6', '2', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, use_function, date_added) values ('Set Order Status', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', '0', 'Set the status of orders made with this payment module to this value', '6', '0', 'tep_cfg_pull_down_order_statuses(', 'tep_get_order_status_name', now())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { return array('MODULE_PAYMENT_CC_STATUS', 'MODULE_PAYMENT_CC_EMAIL', 'MODULE_PAYMENT_CC_ZONE', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', 'MODULE_PAYMENT_CC_SORT_ORDER'); } } ?> Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.