osCommerce and osCMax shopping cart software forums

Shopping Cart Software

osCommerce with teeth!

 
 

customer cannot edit address

This is a discussion on customer cannot edit address within the osCommerce 2.2 Modification Help forums, part of the osCommerce 2.2 Forums category; Should have put here it is the shipping address they want to change Hi I have had complaints that customers ...


Go Back   osCommerce and osCMax shopping cart software forums > osCommerce 2.2 Forums > osCommerce 2.2 Modification Help

Register FAQ Members List Calendar Mark Forums Read


Free community membership! Fast easy FREE membership
Closed Thread

 

LinkBack Thread Tools
  #1  
Old 09-08-2005, 04:27 AM
Active Member
 
Join Date: May 2004
Location: somewhere above colchester uk
Posts: 147
Thanks: 0
Thanked 1 Time in 1 Post
Rep Power: 0
battleaxe
Default customer cannot edit address

Should have put here it is the shipping address they want to change

Hi

I have had complaints that customers cannot update their addresses. When I tried to do a test, I change the primary account address...everyhting happened as it should, but when I looked back in the account nothing had changed.

I have had a look at address_book_process.php and cannot work out what is wrong. It has had the country - state selector mod added, but this shoulf not interfere with saving the new address for the customer. I am adding a copy of address_book_process.php and beg someone to have a look at it to see where I am going wrong....

Quote:
<?php
/*
$Id: address_book_process.php,v 1.79 2003/06/09 23:03:52 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');

if (!tep_session_is_registered('customer_id')) {
$navigation->set_snapshot();
tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL'));
}

// needs to be included earlier to set the success message in the messageStack
require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_ADDRESS_BOOK_PROCESS);

if (isset($HTTP_GET_VARS['action']) && ($HTTP_GET_VARS['action'] == 'deleteconfirm') && isset($HTTP_GET_VARS['delete']) && is_numeric($HTTP_GET_VARS['delete'])) {
tep_db_query("delete from " . TABLE_ADDRESS_BOOK . " where address_book_id = '" . (int)$HTTP_GET_VARS['delete'] . "' and customers_id = '" . (int)$customer_id . "'");

$messageStack->add_session('addressbook', SUCCESS_ADDRESS_BOOK_ENTRY_DELETED, 'success');

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
}

// error checking when updating or adding an entry
$process = false;
// +Country-State Selector
$refresh = false;
if (isset($HTTP_POST_VARS['action']) && (($HTTP_POST_VARS['action'] == 'process') || ($HTTP_POST_VARS['action'] == 'update') ||
($HTTP_POST_VARS['action'] == 'refresh'))) {
if ($HTTP_POST_VARS['action'] != 'refresh') { $process = true; } else { $refresh = true; }
// -Country-State Selector
$error = false;

if (ACCOUNT_GENDER == 'true') $gender = tep_db_prepare_input($HTTP_POST_VARS['gender']);
if (ACCOUNT_COMPANY == 'true') $company = tep_db_prepare_input($HTTP_POST_VARS['company']);
$firstname = tep_db_prepare_input($HTTP_POST_VARS['firstname']);
$lastname = tep_db_prepare_input($HTTP_POST_VARS['lastname']);
$street_address = tep_db_prepare_input($HTTP_POST_VARS['street_address']);
if (ACCOUNT_SUBURB == 'true') $suburb = tep_db_prepare_input($HTTP_POST_VARS['suburb']);
$postcode = tep_db_prepare_input($HTTP_POST_VARS['postcode']);
$city = tep_db_prepare_input($HTTP_POST_VARS['city']);
$country = tep_db_prepare_input($HTTP_POST_VARS['country']);
if (ACCOUNT_STATE == 'true') {
if (isset($HTTP_POST_VARS['zone_id'])) {
$zone_id = tep_db_prepare_input($HTTP_POST_VARS['zone_id']);
} else {
$zone_id = false;
}
$state = tep_db_prepare_input($HTTP_POST_VARS['state']);
}

// +Country-State Selector
if ($refresh) {$state = '';}
if ($process) {
// -Country-State Selector
if (ACCOUNT_GENDER == 'true') {
if ( ($gender != 'm') && ($gender != 'f') ) {
$error = true;

$messageStack->add('addressbook', ENTRY_GENDER_ERROR);
}
}

if (strlen($firstname) < ENTRY_FIRST_NAME_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_FIRST_NAME_ERROR);
}

if (strlen($lastname) < ENTRY_LAST_NAME_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_LAST_NAME_ERROR);
}

if (strlen($street_address) < ENTRY_STREET_ADDRESS_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_STREET_ADDRESS_ERROR);
}

if (strlen($postcode) < ENTRY_POSTCODE_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_POST_CODE_ERROR);
}

if (strlen($city) < ENTRY_CITY_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_CITY_ERROR);
}

if (!is_numeric($country)) {
$error = true;

$messageStack->add('addressbook', ENTRY_COUNTRY_ERROR);
}

if (ACCOUNT_STATE == 'true') {
// +Country-State Selector
if ($zone_id == 0) {
// -Country-State Selector
if (strlen($state) < ENTRY_STATE_MIN_LENGTH) {
$error = true;

$messageStack->add('addressbook', ENTRY_STATE_ERROR);
}
}
}

// +Country-State Selector
}
if (!$refresh) {
// -Country-State Selector
if ($error == false) {
$sql_data_array = array('entry_firstname' => $firstname,
'entry_lastname' => $lastname,
'entry_street_address' => $street_address,
'entry_postcode' => $postcode,
'entry_city' => $city,
'entry_country_id' => (int)$country);

if (ACCOUNT_GENDER == 'true') $sql_data_array['entry_gender'] = $gender;
if (ACCOUNT_COMPANY == 'true') $sql_data_array['entry_company'] = $company;
if (ACCOUNT_SUBURB == 'true') $sql_data_array['entry_suburb'] = $suburb;
if (ACCOUNT_STATE == 'true') {
if ($zone_id > 0) {
$sql_data_array['entry_zone_id'] = (int)$zone_id;
$sql_data_array['entry_state'] = '';
} else {
$sql_data_array['entry_zone_id'] = '0';
$sql_data_array['entry_state'] = $state;
}
}

if ($HTTP_POST_VARS['action'] == 'update') {
tep_db_perform(TABLE_ADDRESS_BOOK, $sql_data_array, 'update', "address_book_id = '" . (int)$HTTP_GET_VARS['edit'] . "' and customers_id ='" . (int)$customer_id . "'");

// reregister session variables
if ( (isset($HTTP_POST_VARS['primary']) && ($HTTP_POST_VARS['primary'] == 'on')) || ($HTTP_GET_VARS['edit'] == $customer_default_address_id) ) {
$customer_first_name = $firstname;
$customer_country_id = $country_id;
$customer_zone_id = (($zone_id > 0) ? (int)$zone_id : '0');
$customer_default_address_id = (int)$HTTP_GET_VARS['edit'];

$sql_data_array = array('customers_firstname' => $firstname,
'customers_lastname' => $lastname,
'customers_default_address_id' => (int)$HTTP_GET_VARS['edit']);

if (ACCOUNT_GENDER == 'true') $sql_data_array['customers_gender'] = $gender;

tep_db_perform(TABLE_CUSTOMERS, $sql_data_array, 'update', "customers_id = '" . (int)$customer_id . "'");
}
} else {
$sql_data_array['customers_id'] = (int)$customer_id;
tep_db_perform(TABLE_ADDRESS_BOOK, $sql_data_array);

$new_address_book_id = tep_db_insert_id();

// reregister session variables
if (isset($HTTP_POST_VARS['primary']) && ($HTTP_POST_VARS['primary'] == 'on')) {
$customer_first_name = $firstname;
$customer_country_id = $country_id;
$customer_zone_id = (($zone_id > 0) ? (int)$zone_id : '0');
if (isset($HTTP_POST_VARS['primary']) && ($HTTP_POST_VARS['primary'] == 'on')) $customer_default_address_id = $new_address_book_id;

$sql_data_array = array('customers_firstname' => $firstname,
'customers_lastname' => $lastname);

if (ACCOUNT_GENDER == 'true') $sql_data_array['customers_gender'] = $gender;
if (isset($HTTP_POST_VARS['primary']) && ($HTTP_POST_VARS['primary'] == 'on')) $sql_data_array['customers_default_address_id'] = $new_address_book_id;

tep_db_perform(TABLE_CUSTOMERS, $sql_data_array, 'update', "customers_id = '" . (int)$customer_id . "'");
}
}

$messageStack->add_session('addressbook', SUCCESS_ADDRESS_BOOK_ENTRY_UPDATED, 'success');

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
}
}
// +Country-State Selector
}

if ($refresh) {
// Recreate $entry from post values collected above
$entry = array(
'entry_firstname' => $firstname,
'entry_lastname' => $lastname,
'entry_street_address' => $street_address,
'entry_postcode' => $postcode,
'entry_city' => $city,
'entry_state' => "",
'entry_zone_id' => (int)0,
'entry_country_id' => (int)$country);
if (ACCOUNT_GENDER == 'true') $entry['entry_gender'] = $gender;
if (ACCOUNT_COMPANY == 'true') $entry['entry_company'] = $company;
if (ACCOUNT_SUBURB == 'true') $entry['entry_suburb'] = $suburb;
}
else
// -Country-State Selector
if (isset($HTTP_GET_VARS['edit']) && is_numeric($HTTP_GET_VARS['edit'])) {
$entry_query = tep_db_query("select entry_gender, entry_company, entry_firstname, entry_lastname, entry_street_address, entry_suburb, entry_postcode, entry_city, entry_state, entry_zone_id, entry_country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customer_id . "' and address_book_id = '" . (int)$HTTP_GET_VARS['edit'] . "'");

if (!tep_db_num_rows($entry_query)) {
$messageStack->add_session('addressbook', ERROR_NONEXISTING_ADDRESS_BOOK_ENTRY);

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
}

$entry = tep_db_fetch_array($entry_query);
} elseif (isset($HTTP_GET_VARS['delete']) && is_numeric($HTTP_GET_VARS['delete'])) {
if ($HTTP_GET_VARS['delete'] == $customer_default_address_id) {
$messageStack->add_session('addressbook', WARNING_PRIMARY_ADDRESS_DELETION, 'warning');

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
} else {
$check_query = tep_db_query("select count(*) as total from " . TABLE_ADDRESS_BOOK . " where address_book_id = '" . (int)$HTTP_GET_VARS['delete'] . "' and customers_id = '" . (int)$customer_id . "'");
$check = tep_db_fetch_array($check_query);

if ($check['total'] < 1) {
$messageStack->add_session('addressbook', ERROR_NONEXISTING_ADDRESS_BOOK_ENTRY);

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
}
}
} else {
$entry = array();
// +Country-State Selector
if (!isset($country)) $country = DEFAULT_COUNTRY;
$entry['entry_country_id'] = $country;
// -Country-State Selector
}

if (!isset($HTTP_GET_VARS['delete']) && !isset($HTTP_GET_VARS['edit'])) {
if (tep_count_customer_address_book_entries() >= MAX_ADDRESS_BOOK_ENTRIES) {
$messageStack->add_session('addressbook', ERROR_ADDRESS_BOOK_FULL);

tep_redirect(tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));
}
}

$breadcrumb->add(NAVBAR_TITLE_1, tep_href_link(FILENAME_ACCOUNT, '', 'SSL'));
$breadcrumb->add(NAVBAR_TITLE_2, tep_href_link(FILENAME_ADDRESS_BOOK, '', 'SSL'));// +Country-State Selector



if (isset($HTTP_GET_VARS['edit']) && is_numeric($HTTP_GET_VARS['edit'])) {
$breadcrumb->add(NAVBAR_TITLE_MODIFY_ENTRY, tep_href_link(FILENAME_ADDRESS_BOOK_PROCESS, 'edit=' . $HTTP_GET_VARS['edit'], 'SSL'));
} elseif (isset($HTTP_GET_VARS['delete']) && is_numeric($HTTP_GET_VARS['delete'])) {
$breadcrumb->add(NAVBAR_TITLE_DELETE_ENTRY, tep_href_link(FILENAME_ADDRESS_BOOK_PROCESS, 'delete=' . $HTTP_GET_VARS['delete'], 'SSL'));
} else {
$breadcrumb->add(NAVBAR_TITLE_ADD_ENTRY, tep_href_link(FILENAME_ADDRESS_BOOK_PROCESS, '', 'SSL'));
}

$content = CONTENT_ADDRESS_BOOK_PROCESS;
$javascript = $content . '.php';

require(DIR_WS_TEMPLATES . TEMPLATENAME_MAIN_PAGE);

require(DIR_WS_INCLUDES . 'application_bottom.php');
?>
Thanks in advance to anyone that can help
__________________
Google says be nice!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Sponsored Links
Advertisement
Closed Thread

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads

Thread Thread Starter Forum Replies Last Post
customer address required only ogilirca osCMax v2 Customization/Mods 4 01-02-2007 11:24 AM
What's up with the hanging ?> on Edit Address Page Dubious osCMax v2 Installation issues 2 10-13-2006 10:19 AM
Defect: Edit/New Address (modules/address_book_details.php) met00 osCMax v2 Customization/Mods 0 02-23-2006 03:49 PM
New Customer and shipping address problem LSVF osCMax v1.7 Discussion 6 02-05-2004 07:45 AM
edit/delete customer address bug! cutxpaste osCommerce 2.2 Modification Help 2 11-13-2003 04:30 PM


All times are GMT -8. The time now is 07:34 PM.


Powered by vBulletin®
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO
http://www.oscmax.com/forums/
Copyright 2008 osCMax