Автор Тема: Неправильный ZIP-код или почтовый код.  (Прочитано 2236 раз)

12 Ноября 2014, 22:00:06
  • Новичок
  • *
  • Сообщений: 30
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
При оформлении заказа выдается следующий текст:

Обнаружена 1 ошибка
Неправильный ZIP-код или почтовый код. Необходимо придерживаться следующего формата: 000000


но в форме заказа нет поля для ввода: почтового индекса.

Куда смотреть? И где вообще можно откорректировать форму для оформления заказа???
13 Ноября 2014, 09:24:44
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86339
  • Репутация: +25417/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Локализация > Страны
Выбрать нужную и отредактировать, установить в поле "Нужен ли почтовый индекс?" - Нет.
13 Ноября 2014, 12:48:56
Ответ #2
  • Новичок
  • *
  • Сообщений: 30
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
02 Февраля 2015, 12:28:00
Ответ #3
  • Пользователь
  • **
  • Сообщений: 55
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • SoapExpress
Хотел бы продолжить.
Ситуация обнаружилась всвязи с желанием добавить Республику Крым.

Проблема в том, что при добавлении нового почтового индекса (в нужном формате ХХХХХХ) преста пишет" такой индекс уже используется"
Разумеется такого индекса в базе нет.

Что делать  и как быть? Это реально, проблемка...

v 1.4.10
ver. 1.4.8.3
       1.4.10.0
02 Февраля 2015, 13:04:19
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 1280
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В prestashop проверяется только формат индекса. Сам индекс не проверяется. Проверка может быть, если установлен дополнительный модуль, такой как, автодополнение адреса или расчет доствки от региона.
02 Февраля 2015, 13:08:57
Ответ #5
  • Пользователь
  • **
  • Сообщений: 55
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • SoapExpress
спасибо за ответ, Но ничего такого не установлено.
Все доставки сделаны только с помощью штатных средств.

А что такое - автодополнение адреса?
ver. 1.4.8.3
       1.4.10.0
02 Февраля 2015, 13:21:25
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 1280
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Крым это регион России. Вы добавляете его как регион, а не отдельную страну. При добавлении региона не нужно заполнять индекс.
Автодополнение - это заполние полей адреса автоматом при наборе 3-5 первых знаков.
02 Февраля 2015, 13:24:16
Ответ #7
  • Пользователь
  • **
  • Сообщений: 55
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • SoapExpress
Ну вы уж буквально не воспринимайте. Разумеется крым - регион, но в регион крым входят округа - читай, города.
В каждый округ можно добавить индексы округа, и вот эти самые индексы добавляться не хотят.
В других округах индексы уже добавлены. (пользовался русификатором , уже не помню с какого ресурса, который убирает лишние страны, и добавляет регионы России)

ПС
Попробуйте добавить у себя пожалуйста.
ver. 1.4.8.3
       1.4.10.0
02 Февраля 2015, 13:33:12
Ответ #8
  • Ветеран
  • *****
  • Сообщений: 13642
  • Репутация: +14563/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В стандартном варианте связь такая
1. Зона - Европа (не Евросоюз)
2. Страна (Россия)
3. Регион (Крым)
Больше делений нет. Если хотите разделять Регион на Округа, то создать нужно свой класс, контроллер и поменять шаблоны.
02 Февраля 2015, 13:39:36
Ответ #9
  • Пользователь
  • **
  • Сообщений: 55
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • SoapExpress
Подождите подождите.!!!
Какая страна? где вы прочли это ?
Какие контроллеры?
Я просто хочу воспользоваться функционалом престашопа

Итак
Создал Регион КРЫМ
Создал ОКРУГА (Алупка, Севастополь, Симферополь и тп)
Заходим в округ Симферополь - назначаем его к республике крым
внизу есть родное престовское  окошко "добавить почтовый индекс"
Добавляю (например 295029) - получаю ошибку "такой индекс уже используется"
В БД , разумеется такого индекса нет (не нахожу его, да и откуда ему взяться)

Ради эксперимента ввожу пятизначный - вот тогда ругается, что не тот формат. Сам формат задан в настройках страны как NNNNNN

Все . Ничего космического.
ver. 1.4.8.3
       1.4.10.0
02 Февраля 2015, 13:42:07
Ответ #10
  • Ветеран
  • *****
  • Сообщений: 13642
  • Репутация: +14563/-1
  • Сообщество PrestaShop
    • Просмотр профиля
У меня поля для регионов:
Наименование
Код ISO
Страна
Зона
Статус

Нет там индекса.
В полях для страны есть.

02 Февраля 2015, 13:45:31
Ответ #11
  • Ветеран
  • *****
  • Сообщений: 13642
  • Репутация: +14563/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Вот класс State от стандарного пакета 1.4.11
class StateCore extends ObjectModel
{
/** @var integer Country id which state belongs */
public $id_country;

/** @var integer Zone id which state belongs */
public $id_zone;

/** @var string 2 letters iso code */
public $iso_code;

/** @var string Name */
public $name;

/** @var boolean Status for delivery */
public $active = true;

  protected $fieldsRequired = array('id_country', 'id_zone', 'iso_code', 'name');
  protected $fieldsSize = array('iso_code' => 4, 'name' => 32);
  protected $fieldsValidate = array('id_country' => 'isUnsignedId', 'id_zone' => 'isUnsignedId', 'iso_code' => 'isStateIsoCode', 'name' => 'isGenericName', 'active' => 'isBool');

protected $table = 'state';
protected $identifier = 'id_state';

protected $webserviceParameters = array(
'fields' => array(
'id_zone' => array('xlink_resource'=> 'zones'),
'id_country' => array('xlink_resource'=> 'countries')
),
);

public function getFields()
{
parent::validateFields();
$fields['id_country'] = (int)$this->id_country;
$fields['id_zone'] = (int)$this->id_zone;
$fields['iso_code'] = pSQL(strtoupper($this->iso_code));
$fields['name'] = pSQL($this->name);
$fields['active'] = (int)$this->active;
return $fields;
}
Нет индекса.
У вас какие поля в админке?
02 Февраля 2015, 13:57:53
Ответ #12
  • Пользователь
  • **
  • Сообщений: 55
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • SoapExpress
Признаюсь честно, я не очень понимаю даже, что такое классы. Понимаю, что это что то важное для ядра движка, но не более.

http://monosnap.com/image/EsS5pWf31t183NUQ44Lz3TqJiX1Bcr

по ссылке результат.
Или это нормально?
ver. 1.4.8.3
       1.4.10.0
02 Февраля 2015, 14:12:57
Ответ #13
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22220
  • Репутация: +17111/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Вот класс State от стандарного пакета 1.4.11
Это не тот класс. Для округов класс County.php. Для админки /admin/tabs/AdminCounty.php
Проверка индекса в
if ($county->isZipCodeRangePresent($from, $to))
die('error: '.Tools::displayError('This Zip Code is already in use.'));
Для того чтобы убрать проверку, нужно закоментировать эти строки в файле /admin/ajax.php
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
02 Февраля 2015, 14:14:39
Ответ #14
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22220
  • Репутация: +17111/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
http://monosnap.com/image/EsS5pWf31t183NUQ44Lz3TqJiX1Bcr
по ссылке результат.
Или это нормально?
Для prestashop 1.4 нормально, так и должно быть.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.