Перейти к содержанию
JollyJoy

Оформление заказа без регистрации

Рекомендуемые сообщения

ocStore v0.1.6, хостинг nic.ru.

Господа, подскажите, пожалуйста, как сделать так чтобы при нажатии кнопки "оформить" в корзине, открывалось сразу оформление в гостевом режиме. т.е. чтобы при нажатии кнопки открывалась не страница выбора типа регистрации (..ru/index.php?route=account/login), а сразу страница оформления для гостей (..ru/index.php?route=checkout/guest_step_1) ?

Я решил что в моем магазине нет необходимости в такой функции как личный кабинет/регистрация.

В поиске ничего конкретного не нашел.

Ткните в ссылку если есть такая тема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я много ковырял и удалял лишнее...

Изменено пользователем afwollis
не надо полностью цитировать предыдущее сообщение ;-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я тоже много ковырял, но так и не смог наладить так чтобы это работало без ошибок...

поэтому ищу помощи на форуме

Изменено пользователем afwollis
не надо полностью цитировать предыдущее сообщение ;-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разобрался как это сделать, надо всего лишь изменить в файле catalog/controller/checkout/shipping.php строку 28-ую.

Вместо

$this->redirect(HTTPS_SERVER . 'index.php?route=account/login');

надо сделать

$this->redirect(HTTPS_SERVER . 'index.php?route=checkout/guest_step_1');

и все заказы будут оформляться сразу без регистрации.
  • +1 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошие новости! В будущей системе 1.5 , которая вот вот выйдет будет поддержка оформления заказа без регистрации на одной странице (без guest_step1,2,3...).

Об этом сегодня написал разработчик opencart. http://forum.opencart.com/viewtopic.php?f=2&t=25510&start=620

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В этот раз полез причёсывать форму заказа без регистрации, вроде весь процесс проходил гладко, думал ну в этот раз без косяков, начал проводить испытания и снова глухая непробиваемая стена, которую не могу преодолеть. Стена, в которую упёрся, заключается в следующем:

ИзображениеИзображение

Мой guest_step_1.php выглядит следующим образом:

<?php 
class ControllerCheckoutGuestStep1 extends Controller {
private $error = array();

 	public function index() {
   	if (!$this->cart->hasProducts() || (!$this->cart->hasStock() && !$this->config->get('config_stock_checkout'))) {
 			$this->redirect(HTTPS_SERVER . 'index.php?route=checkout/cart');
   	}

	if ($this->customer->isLogged()) {
 			$this->redirect(HTTPS_SERVER . 'index.php?route=checkout/shipping');
   	} 

	if (!$this->config->get('config_guest_checkout') || $this->cart->hasDownload()) {
		$this->session->data['redirect'] = HTTPS_SERVER . 'index.php?route=checkout/shipping';

 			$this->redirect(HTTPS_SERVER . 'index.php?route=account/login');
   	} 

	$this->language->load('checkout/guest_step_1');

	if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
		$this->session->data['guest']['firstname'] = trim($this->request->post['firstname']);
		$this->session->data['guest']['lastname'] = trim($this->request->post['lastname']);
		$this->session->data['guest']['email'] = trim($this->request->post['email']);
		$this->session->data['guest']['telephone'] = $this->request->post['telephone'];
		$this->session->data['guest']['fax'] = $this->request->post['fax'];
		$this->session->data['guest']['company'] = $this->request->post['company'];
		$this->session->data['guest']['address_1'] = $this->request->post['address_1'];
		$this->session->data['guest']['address_2'] = $this->request->post['address_2'];
		$this->session->data['guest']['postcode'] = $this->request->post['postcode'];
		$this->session->data['guest']['city'] = $this->request->post['city'];
		$this->session->data['guest']['country_id'] = $this->request->post['country_id'];
		$this->session->data['guest']['zone_id'] = $this->request->post['zone_id'];

		if ($this->cart->hasShipping()) {
			$this->tax->setZone($this->request->post['country_id'], $this->request->post['zone_id']);
		}

		$this->load->model('localisation/country');

		$country_info = $this->model_localisation_country->getCountry($this->request->post['country_id']);

		if ($country_info) {
			$this->session->data['guest']['country'] = $country_info['name'];	
			$this->session->data['guest']['iso_code_2'] = $country_info['iso_code_2'];
			$this->session->data['guest']['iso_code_3'] = $country_info['iso_code_3'];
			$this->session->data['guest']['address_format'] = $country_info['address_format'];
		} else {
			$this->session->data['guest']['country'] = '';	
			$this->session->data['guest']['iso_code_2'] = '';
			$this->session->data['guest']['iso_code_3'] = '';
			$this->session->data['guest']['address_format'] = '';
		}

		$this->load->model('localisation/zone');

		$zone_info = $this->model_localisation_zone->getZone($this->request->post['zone_id']);

		if ($zone_info) {
			$this->session->data['guest']['zone'] = $zone_info['name'];
			$this->session->data['guest']['zone_code'] = $zone_info['code'];
		} else {
			$this->session->data['guest']['zone'] = '';
			$this->session->data['guest']['zone_code'] = '';
		}

		if (isset($this->request->post['shipping_indicator'])) {
			$this->session->data['guest']['shipping']['firstname'] = trim($this->request->post['shipping_firstname']);
			$this->session->data['guest']['shipping']['lastname'] = trim($this->request->post['shipping_lastname']);
			$this->session->data['guest']['shipping']['company'] = trim($this->request->post['shipping_company']);
			$this->session->data['guest']['shipping']['address_1'] = $this->request->post['shipping_address_1'];
			$this->session->data['guest']['shipping']['address_2'] = $this->request->post['shipping_address_2'];
			$this->session->data['guest']['shipping']['postcode'] = $this->request->post['shipping_postcode'];
			$this->session->data['guest']['shipping']['city'] = $this->request->post['shipping_city'];
			$this->session->data['guest']['shipping']['country_id'] = $this->request->post['shipping_country_id'];
			$this->session->data['guest']['shipping']['zone_id'] = $this->request->post['shipping_zone_id'];

			if ($this->cart->hasShipping()) {
				$this->tax->setZone($this->request->post['shipping_country_id'], $this->request->post['shipping_zone_id']);
			}

			$shipping_country_info = $this->model_localisation_country->getCountry($this->request->post['shipping_country_id']);

			if ($shipping_country_info) {
				$this->session->data['guest']['shipping']['country'] = $shipping_country_info['name'];	
				$this->session->data['guest']['shipping']['iso_code_2'] = $shipping_country_info['iso_code_2'];
				$this->session->data['guest']['shipping']['iso_code_3'] = $shipping_country_info['iso_code_3'];
				$this->session->data['guest']['shipping']['address_format'] = $shipping_country_info['address_format'];
			} else {
				$this->session->data['guest']['shipping']['country'] = '';	
				$this->session->data['guest']['shipping']['iso_code_2'] = '';
				$this->session->data['guest']['shipping']['iso_code_3'] = '';
				$this->session->data['guest']['shipping']['address_format'] = '';
			}

			$shipping_zone_info = $this->model_localisation_zone->getZone($this->request->post['shipping_zone_id']);

			if ($zone_info) {
				$this->session->data['guest']['shipping']['zone'] = $shipping_zone_info['name'];
				$this->session->data['guest']['shipping']['zone_code'] = $shipping_zone_info['code'];
			} else {
				$this->session->data['guest']['shipping']['zone'] = '';
				$this->session->data['guest']['shipping']['zone_code'] = '';
			}

		} else {
			unset($this->session->data['guest']['shipping']);
		}

		unset($this->session->data['shipping_methods']);
		unset($this->session->data['shipping_method']);
		unset($this->session->data['payment_methods']);
		unset($this->session->data['payment_method']);

 			$this->redirect(HTTPS_SERVER . 'index.php?route=checkout/guest_step_2');
   	} 

	$this->document->title = $this->language->get('heading_title');

	$this->document->breadcrumbs = array();

     	$this->document->breadcrumbs[] = array(
       	'href'      => HTTP_SERVER . 'index.php?route=common/home',
       	'text'      => $this->language->get('text_home'),
       	'separator' => FALSE
     	); 

     	$this->document->breadcrumbs[] = array(
       	'href'      => HTTP_SERVER . 'index.php?route=checkout/cart',
       	'text'      => $this->language->get('text_cart'),
       	'separator' => $this->language->get('text_separator')
     	);

     	$this->document->breadcrumbs[] = array(
       	'href'      => HTTPS_SERVER . 'index.php?route=checkout/guest_step_1',
       	'text'      => $this->language->get('text_guest_step_1'),
       	'separator' => $this->language->get('text_separator')
     	);

   	$this->data['heading_title'] = $this->language->get('heading_title');

   	$this->data['text_your_details'] = $this->language->get('text_your_details');
	$this->data['text_your_address'] = $this->language->get('text_your_address');
	$this->data['text_shipping_address'] = $this->language->get('text_shipping_address');
	$this->data['text_indicator'] = $this->language->get('text_indicator');
	$this->data['text_select'] = $this->language->get('text_select');

   	$this->data['entry_firstname'] = $this->language->get('entry_firstname');
   	$this->data['entry_lastname'] = $this->language->get('entry_lastname');
   	$this->data['entry_email'] = $this->language->get('entry_email');
   	$this->data['entry_telephone'] = $this->language->get('entry_telephone');
	$this->data['entry_fax'] = $this->language->get('entry_fax');
   	$this->data['entry_company'] = $this->language->get('entry_company');
   	$this->data['entry_address_1'] = $this->language->get('entry_address_1');
   	$this->data['entry_address_2'] = $this->language->get('entry_address_2');
   	$this->data['entry_postcode'] = $this->language->get('entry_postcode');
   	$this->data['entry_city'] = $this->language->get('entry_city');
   	$this->data['entry_country'] = $this->language->get('entry_country');
   	$this->data['entry_zone'] = $this->language->get('entry_zone');

	$this->data['button_continue'] = $this->language->get('button_continue');
	$this->data['button_back'] = $this->language->get('button_back');

	if (isset($this->error['company'])) {
		$this->data['error_company'] = $this->error['company'];
	} else {
		$this->data['error_company'] = '';
	}	

	if (isset($this->error['firstname'])) {
		$this->data['error_firstname'] = $this->error['firstname'];
	} else {
		$this->data['error_firstname'] = '';
	}	

	if (isset($this->error['lastname'])) {
		$this->data['error_lastname'] = $this->error['lastname'];
	} else {
		$this->data['error_lastname'] = '';
	}

	if (isset($this->error['email'])) {
		$this->data['error_email'] = $this->error['email'];
	} else {
		$this->data['error_email'] = '';
	}

	if (isset($this->error['telephone'])) {
		$this->data['error_telephone'] = $this->error['telephone'];
	} else {
		$this->data['error_telephone'] = '';
	}

	if (isset($this->error['address_1'])) {
		$this->data['error_address_1'] = $this->error['address_1'];
	} else {
		$this->data['error_address_1'] = '';
	}

	if (isset($this->error['city'])) {
		$this->data['error_city'] = $this->error['city'];
	} else {
		$this->data['error_city'] = '';
	}

	if (isset($this->error['postcode'])) {
		$this->data['error_postcode'] = $this->error['postcode'];
	} else {
		$this->data['error_postcode'] = '';
	}

	if (isset($this->error['country'])) {
		$this->data['error_country'] = $this->error['country'];
	} else {
		$this->data['error_country'] = '';
	}

	if (isset($this->error['zone'])) {
		$this->data['error_zone'] = $this->error['zone'];
	} else {
		$this->data['error_zone'] = '';
	}

	if (isset($this->error['shipping_company'])) {
		$this->data['error_shipping_company'] = $this->error['shipping_company'];
	} else {
		$this->data['error_shipping_company'] = '';
	}	

	if (isset($this->error['shipping_firstname'])) {
		$this->data['error_shipping_firstname'] = $this->error['shipping_firstname'];
	} else {
		$this->data['error_shipping_firstname'] = '';
	}	

	if (isset($this->error['shipping_lastname'])) {
		$this->data['error_shipping_lastname'] = $this->error['shipping_lastname'];
	} else {
		$this->data['error_shipping_lastname'] = '';
	}

	if (isset($this->error['shipping_address_1'])) {
		$this->data['error_shipping_address_1'] = $this->error['shipping_address_1'];
	} else {
		$this->data['error_shipping_address_1'] = '';
	}

	if (isset($this->error['shipping_city'])) {
		$this->data['error_shipping_city'] = $this->error['shipping_city'];
	} else {
		$this->data['error_shipping_city'] = '';
	}

	if (isset($this->error['shipping_postcode'])) {
		$this->data['error_shipping_postcode'] = $this->error['shipping_postcode'];
	} else {
		$this->data['error_shipping_postcode'] = '';
	}

	if (isset($this->error['shipping_country'])) {
		$this->data['error_shipping_country'] = $this->error['shipping_country'];
	} else {
		$this->data['error_shipping_country'] = '';
	}

	if (isset($this->error['shipping_zone'])) {
		$this->data['error_shipping_zone'] = $this->error['shipping_zone'];
	} else {
		$this->data['error_shipping_zone'] = '';
	}

   	$this->data['action'] = HTTPS_SERVER . 'index.php?route=checkout/guest_step_1';

	if (isset($this->request->post['firstname'])) {
   		$this->data['firstname'] = $this->request->post['firstname'];
	} elseif (isset($this->session->data['guest']['firstname'])) {
		$this->data['firstname'] = $this->session->data['guest']['firstname'];
	} else {
		$this->data['firstname'] = '';
	}

	if (isset($this->request->post['lastname'])) {
   		$this->data['lastname'] = $this->request->post['lastname'];
	} elseif (isset($this->session->data['guest']['lastname'])) {
		$this->data['lastname'] = $this->session->data['guest']['lastname'];
	} else {
		$this->data['lastname'] = '';
	}

	if (isset($this->request->post['email'])) {
   		$this->data['email'] = $this->request->post['email'];
	} elseif (isset($this->session->data['guest']['email'])) {
		$this->data['email'] = $this->session->data['guest']['email'];
	} else {
		$this->data['email'] = '';
	}

	if (isset($this->request->post['telephone'])) {
   		$this->data['telephone'] = $this->request->post['telephone'];
	} elseif (isset($this->session->data['guest']['telephone'])) {
		$this->data['telephone'] = $this->session->data['guest']['telephone'];		
	} else {
		$this->data['telephone'] = '';
	}

	if (isset($this->request->post['fax'])) {
   		$this->data['fax'] = $this->request->post['fax'];
	} elseif (isset($this->session->data['guest']['fax'])) {
		$this->data['fax'] = $this->session->data['guest']['fax'];				
	} else {
		$this->data['fax'] = '';
	}

	if (isset($this->request->post['company'])) {
   		$this->data['company'] = $this->request->post['company'];
	} elseif (isset($this->session->data['guest']['company'])) {
		$this->data['company'] = $this->session->data['guest']['company'];			
	} else {
		$this->data['company'] = '';
	}

	if (isset($this->request->post['address_1'])) {
   		$this->data['address_1'] = $this->request->post['address_1'];
	} elseif (isset($this->session->data['guest']['address_1'])) {
		$this->data['address_1'] = $this->session->data['guest']['address_1'];			
	} else {
		$this->data['address_1'] = '';
	}

	if (isset($this->request->post['address_2'])) {
   		$this->data['address_2'] = $this->request->post['address_2'];
	} elseif (isset($this->session->data['guest']['address_2'])) {
		$this->data['address_2'] = $this->session->data['guest']['address_2'];			
	} else {
		$this->data['address_2'] = '';
	}

	if (isset($this->request->post['postcode'])) {
   		$this->data['postcode'] = $this->request->post['postcode'];
	} elseif (isset($this->session->data['guest']['postcode'])) {
		$this->data['postcode'] = $this->session->data['guest']['postcode'];					
	} else {
		$this->data['postcode'] = '';
	}

	if (isset($this->request->post['city'])) {
   		$this->data['city'] = $this->request->post['city'];
	} elseif (isset($this->session->data['guest']['city'])) {
		$this->data['city'] = $this->session->data['guest']['city'];			
	} else {
		$this->data['city'] = '';
	}

   	if (isset($this->request->post['country_id'])) {
     		$this->data['country_id'] = $this->request->post['country_id'];
	} elseif (isset($this->session->data['guest']['country_id'])) {
		$this->data['country_id'] = $this->session->data['guest']['country_id'];  				
	} else {
     		$this->data['country_id'] = $this->config->get('config_country_id');
   	}

   	if (isset($this->request->post['zone_id'])) {
     		$this->data['zone_id'] = $this->request->post['zone_id'];
	} elseif (isset($this->session->data['guest']['zone_id'])) {
		$this->data['zone_id'] = $this->session->data['guest']['zone_id'];			
   	} else {
     		$this->data['zone_id'] = 'FALSE';
   	}

   	if (isset($this->request->post['shipping_firstname'])) {
   		$this->data['shipping_firstname'] = $this->request->post['shipping_firstname'];
	} elseif (isset($this->session->data['guest']['shipping']['firstname'])) {
		$this->data['shipping_firstname'] = $this->session->data['guest']['shipping']['firstname'];
	} else {
		$this->data['shipping_firstname'] = '';
	}

	if (isset($this->request->post['shipping_lastname'])) {
   		$this->data['shipping_lastname'] = $this->request->post['shipping_lastname'];
	} elseif (isset($this->session->data['guest']['shipping']['lastname'])) {
		$this->data['shipping_lastname'] = $this->session->data['guest']['shipping']['lastname'];
	} else {
		$this->data['shipping_lastname'] = '';
	}

	if (isset($this->request->post['shipping_company'])) {
   		$this->data['shipping_company'] = $this->request->post['shipping_company'];
	} elseif (isset($this->session->data['guest']['shipping']['company'])) {
		$this->data['shipping_company'] = $this->session->data['guest']['shipping']['company'];			
	} else {
		$this->data['shipping_company'] = '';
	}

	if (isset($this->request->post['shipping_address_1'])) {
   		$this->data['shipping_address_1'] = $this->request->post['shipping_address_1'];
	} elseif (isset($this->session->data['guest']['shipping']['address_1'])) {
		$this->data['shipping_address_1'] = $this->session->data['guest']['shipping']['address_1'];			
	} else {
		$this->data['shipping_address_1'] = '';
	}

	if (isset($this->request->post['shipping_address_2'])) {
   		$this->data['shipping_address_2'] = $this->request->post['shipping_address_2'];
	} elseif (isset($this->session->data['guest']['shipping']['address_2'])) {
		$this->data['shipping_address_2'] = $this->session->data['guest']['shipping']['address_2'];			
	} else {
		$this->data['shipping_address_2'] = '';
	}

	if (isset($this->request->post['shipping_postcode'])) {
   		$this->data['shipping_postcode'] = $this->request->post['shipping_postcode'];
	} elseif (isset($this->session->data['guest']['shipping']['postcode'])) {
		$this->data['shipping_postcode'] = $this->session->data['guest']['shipping']['postcode'];					
	} else {
		$this->data['shipping_postcode'] = '';
	}

	if (isset($this->request->post['shipping_city'])) {
   		$this->data['shipping_city'] = $this->request->post['shipping_city'];
	} elseif (isset($this->session->data['guest']['shipping']['city'])) {
		$this->data['shipping_city'] = $this->session->data['guest']['shipping']['city'];			
	} else {
		$this->data['shipping_city'] = '';
	}

   	if (isset($this->request->post['shipping_country_id'])) {
     		$this->data['shipping_country_id'] = $this->request->post['shipping_country_id'];
	} elseif (isset($this->session->data['guest']['shipping']['country_id'])) {
		$this->data['shipping_country_id'] = $this->session->data['guest']['shipping']['country_id'];  				
	} else {
     		$this->data['shipping_country_id'] = $this->config->get('config_country_id');
   	}

   	if (isset($this->request->post['shipping_zone_id'])) {
     		$this->data['shipping_zone_id'] = $this->request->post['shipping_zone_id'];
	} elseif (isset($this->session->data['guest']['shipping']['zone_id'])) {
		$this->data['shipping_zone_id'] = $this->session->data['guest']['shipping']['zone_id'];			
   	} else {
     		$this->data['shipping_zone_id'] = 'FALSE';
   	}

   	if (isset($this->request->post['shipping_indicator'])) {
     		$this->data['shipping_indicator'] = TRUE;
     	} elseif (isset($this->session->data['guest']['shipping'])) {
		$this->data['shipping_indicator'] = TRUE;
   	} else {
     		$this->data['shipping_indicator'] = FALSE;
   	}

	$this->data['shipping'] = $this->cart->hasShipping();

	$this->load->model('localisation/country');

   	$this->data['countries'] = $this->model_localisation_country->getCountries();

	$this->data['back'] = HTTP_SERVER . 'index.php?route=checkout/cart';

	if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/checkout/guest_step_1.tpl')) {
		$this->template = $this->config->get('config_template') . '/template/checkout/guest_step_1.tpl';
	} else {
		$this->template = 'default/template/checkout/guest_step_1.tpl';
	}

	$this->children = array(
		'common/column_left',
		'common/column_right',
		'common/footer',
		'common/header'
	);

	$this->response->setOutput($this->render(TRUE), $this->config->get('config_compression'));
 	}

 	private function validate() {
   	if ((strlen(utf8_decode($this->request->post['company'])) < 1) || (strlen(utf8_decode($this->request->post['company'])) > 32)) {
     		$this->error['company'] = $this->language->get('error_company');
   	}

   	if ((strlen(utf8_decode($this->request->post['firstname'])) < 1) || (strlen(utf8_decode($this->request->post['firstname'])) > 32)) {
     		$this->error['firstname'] = $this->language->get('error_firstname');
   	}

   	if ((strlen(utf8_decode($this->request->post['lastname'])) < 1) || (strlen(utf8_decode($this->request->post['lastname'])) > 32)) {
     		$this->error['lastname'] = $this->language->get('error_lastname');
   	}

   	if (!preg_match(EMAIL_PATTERN, $this->request->post['email'])) {
     		$this->error['email'] = $this->language->get('error_email');
   	}

   	if ((strlen(utf8_decode($this->request->post['telephone'])) < 11) || (strlen(utf8_decode($this->request->post['telephone'])) > 11)) {
     		$this->error['telephone'] = $this->language->get('error_telephone');
   	}

   	if ((strlen(utf8_decode($this->request->post['address_1'])) < 1) || (strlen(utf8_decode($this->request->post['address_1'])) > 32)) {
     		$this->error['address_1'] = $this->language->get('error_address_1');
   	}

   	if ((strlen(utf8_decode($this->request->post['city'])) < 2) || (strlen(utf8_decode($this->request->post['city'])) > 128)) {
     		$this->error['city'] = $this->language->get('error_city');
   	}

	$this->load->model('localisation/country');

	$country_info = $this->model_localisation_country->getCountry($this->request->post['country_id']);

	if ((strlen(utf8_decode($this->request->post['postcode'])) < 6) || (strlen(utf8_decode($this->request->post['postcode'])) > 6)) {
			$this->error['postcode'] = $this->language->get('error_postcode');
	}

   	if ($this->request->post['country_id'] == 'FALSE') {
     		$this->error['country'] = $this->language->get('error_country');
   	}

   	if ($this->request->post['zone_id'] == 'FALSE') {
     		$this->error['zone'] = $this->language->get('error_zone');
   	}

	if (isset($this->request->post['shipping_indicator'])) {

   		if ((strlen(utf8_decode($this->request->post['shipping_company'])) < 1) || (strlen(utf8_decode($this->request->post['shipping_company'])) > 32)) {
     		$this->error['shipping_company'] = $this->language->get('error_company');
       	}

		if ((strlen(utf8_decode($this->request->post['shipping_firstname'])) < 1) || (strlen(utf8_decode($this->request->post['shipping_firstname'])) > 32)) {
     		$this->error['shipping_firstname'] = $this->language->get('error_firstname');
   		}

   		if ((strlen(utf8_decode($this->request->post['shipping_lastname'])) < 1) || (strlen(utf8_decode($this->request->post['shipping_lastname'])) > 32)) {
     			$this->error['shipping_lastname'] = $this->language->get('error_lastname');
   		}

		if ((strlen(utf8_decode($this->request->post['shipping_address_1'])) < 1) || (strlen(utf8_decode($this->request->post['shipping_address_1'])) > 32)) {
     		$this->error['shipping_address_1'] = $this->language->get('error_address_1');
   		}

   		if ((strlen(utf8_decode($this->request->post['shipping_city'])) < 2) || (strlen(utf8_decode($this->request->post['shipping_city'])) > 32)) {
     		$this->error['shipping_city'] = $this->language->get('error_city');
       	}

		$country_info = $this->model_localisation_country->getCountry($this->request->post['shipping_country_id']);

		if ((strlen(utf8_decode($this->request->post['shipping_postcode'])) < 6) || (strlen(utf8_decode($this->request->post['shipping_postcode'])) > 6)) {
			$this->error['shipping_postcode'] = $this->language->get('error_postcode');
		}

   		if ($this->request->post['shipping_country_id'] == 'FALSE') {
     			$this->error['shipping_country'] = $this->language->get('error_country');
   		}

   		if ($this->request->post['shipping_zone_id'] == 'FALSE') {
     			$this->error['shipping_zone'] = $this->language->get('error_zone');
   		}

	}

   	if (!$this->error) {
     		return TRUE;
   	} else {
     		return FALSE;
   	}
 	}

 	public function zone() {
	$output = '<option value="FALSE">' . $this->language->get('text_select') . '</option>';

	$this->load->model('localisation/zone');

   	$results = $this->model_localisation_zone->getZonesByCountryId($this->request->get['country_id']);

     	foreach ($results as $result) {
       	$output .= '<option value="' . $result['zone_id'] . '"';

   		if (isset($this->request->get['zone_id']) && ($this->request->get['zone_id'] == $result['zone_id'])) {
     			$output .= ' selected="selected"';
   		}

   		$output .= '>' . $result['name'] . '</option>';
   	} 

	if (!$results) {
		if (!$this->request->get['zone_id']) {
 				$output .= '<option value="0" selected="selected">' . $this->language->get('text_none') . '</option>';
		} else {
			$output .= '<option value="0">' . $this->language->get('text_none') . '</option>';
		}
	}

	$this->response->setOutput($output, $this->config->get('config_compression'));
 	}

public function postcode() {

 		$this->language->load('checkout/guest_step_1');

 		$this->load->model('localisation/country');

   	$result = $this->model_localisation_country->getCountry($this->request->get['country_id']);

	$output = '';

     	if (isset($result['postcode_required']) && $result['postcode_required']) {
       	$output = '<span class="required">*</span> ' . $this->language->get('entry_postcode');
	} else {
		$output = $this->language->get('entry_postcode');
	}

	$this->response->setOutput($output, $this->config->get('config_compression'));
}

}
?>

А теперь о самом главном!

Помогите, пожалуйста, пробить непробиваемую для меня стену.

P.S. Наглядно можно посмотреть здесь.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем, всё ясно и понятно, вопрос попал в разряд не отвечаемых, то есть сложных. Придётся возвращаться к своему проверенному методу "ТЫКА" не мытьем так катаньем, надеюсь, я всё-таки его вымучаю.

P.S. - Я хоть там ковыряюсь ? Изображение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

gdi31, у вас:

а) либо "квартира" идет в скрипт, как "номер дома";

б) либо проверяется она как номер дома.

об этом свидетельствует отсутствие ошибки про номер дома после отправки формы.

1. проверьте шаблон на правильность (уникальность) имен полей формы.

2. проверьте функцию validate в скрипте.

и вообще - пересмотрите все, что связано с "домом" в вашей регистрации.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

и вообще - пересмотрите все, что связано с "домом" в вашей регистрации.

Пересмотрел с помощью Dw и обнаружил что у меня в этом отрезке ЛЯП

<td><?php echo $entry_address_2; ?></td>

<td><input type="text" name="address_2(вот тут влепил 1)" value="<?php echo $address_2; ?>" /></td>

afwollis, огромное спасибо за наводку.

1000 раз смотрел и всё мимо, а тут бах и в яблочко.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извините, а можно ли как-то взломать вашу программу и войти от лица администратора и отправить товар не туда или оскорбить клиента? Насколько безопасен ваш продукт?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько безопасен ваш продукт?

Ваш это чей?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.