Форум русской поддержки Joomla!® CMS
10.12.2016, 12:56:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

[Решено] Разделение тысяч пробелом

 (Прочитано 7112 раз)
0 Пользователей и 1 Гость смотрят эту тему.
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« : 08.01.2012, 22:55:40 »

Не знаю у кого как, но у меня пробел в качестве разделителя тысяч ставиться категорически отказывался (в любых вариантах написания).
Немного поковырялся в коде ...

Если вдруг кто-то столкнется - вот решения.

1. Правка файла currencydisplay.php (administrator\components\com_virtuemart\helpers\)
строка 464
Код:
$res = number_format((float)$nb,$nbDecimal,$this->_decimal,$this->_thousands);
меняем это на
Код:
$res = number_format((float)$nb,$nbDecimal,$this->_decimal,' ');

2. Меняем тип данных в БД
Таблица virtuemart_currencies, поле currency_thousands, меняем тип с CHAR на VARCHAR
(о чем думали разработчики, если по спецификации mysql концевые пробелы у типа CHAR отсекаются)

Лично я для себя оставил второй вариант - в случае обновлений магазина скорее обновят файлы чем таблицы и , соответственно опять придется вносить изменения
 
« Последнее редактирование: 01.04.2012, 01:04:19 от nikonor » Записан
web11
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 58


« Ответ #1 : 31.10.2012, 11:57:30 »

Спасибо за нужное решение!
Записан
a.koreshov
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #2 : 04.12.2012, 23:34:33 »

Не работает пишет ошибку в линии 465
Записан
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« Ответ #3 : 04.12.2012, 23:38:41 »

я так понял вы имеете ввиду 1 способ ... ну дык попробуйте второй Azn
Записан
nadaff
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 13


« Ответ #4 : 14.12.2012, 18:52:13 »

Отличное решение, спасибо!
Сделал по первому способу (лень базу трогать)

в версии 2.0.14 332 строчка  Smiley
« Последнее редактирование: 14.12.2012, 18:58:33 от nadaff » Записан
koshika
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #5 : 09.01.2013, 00:40:42 »

пробовала делать и то, и другое... на первое просто не реагирует, второе позволяет поставить пробел в админке, в настройках валюты, но на сайте ничего не меняется... так же стоит "вопросик". кэш чистила.
Записан
techno27
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #6 : 02.02.2013, 16:49:47 »

Попробовал 2-ой способ. Все ок.
Спасибо
Записан
dobv
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 9


« Ответ #7 : 20.02.2013, 12:47:01 »

Спасибо за второй вариант!
Записан
zru4na
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« Ответ #8 : 06.04.2013, 11:25:19 »

Пробую второй вариант, но в типах данных нету VARCHAR. как быть?
Записан
nadaff
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 13


« Ответ #9 : 15.12.2013, 12:56:34 »

Товарищи! версия 2.0.24, что-то поменялось... Второй вариант с базой не срабатывает...
« Последнее редактирование: 15.12.2013, 17:58:50 от nadaff » Записан
Watcher17
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #10 : 20.12.2013, 12:30:04 »

В версии VM2 версии 2.0.2 и выше  алгоритм немного меняется. Мы так же находим   virtuemart_currencies с вашим префиксом и меняем ту же строчку  currency_thousands в нужной вам валюте, но ставим туда уже не "VARCHAR", а "."  Надписи "CHAR'' там изначально не будет. Нужно поставить символ, который будет разделителем - у меня ".", как я указал предложением ранее.
« Последнее редактирование: 20.12.2013, 12:35:21 от Watcher17 » Записан
ovit
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 10


« Ответ #11 : 20.12.2013, 15:10:13 »

А у меня сработало по второму варианту (VM 2.0.26). Замена CHAR на VARCHAR - это замена ТИПА поля, а не значения. После изменения типа поля, меняем его значение, например на пробел, - можно через настройку валюты в  админке VM.
Записан
Tellarius
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 15


« Ответ #12 : 20.01.2014, 12:09:28 »

VM 2.0.22 Второй способ работает!
Спасибо!
Записан
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« Ответ #13 : 20.01.2014, 12:31:32 »

Пожалуйста! Azn
Записан
RivalNoX
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 49



« Ответ #14 : 30.05.2014, 21:14:00 »

Спасибо! Первый вариант помог!
Записан
AlexTwo
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 7



« Ответ #15 : 05.07.2014, 23:57:45 »

А подскажите пожалуйста, как реализовать разделители, например, в таком виде 4 355 000 руб.?
Записан
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« Ответ #16 : 06.07.2014, 00:05:41 »

разве так же как и с тысячами не получается?

у меня работает
Записан
AlexTwo
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 7



« Ответ #17 : 06.07.2014, 00:11:07 »

К сожалению, используя первое решение у меня делит только так 4 355000 руб.
Записан
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« Ответ #18 : 06.07.2014, 00:12:25 »

попробуйте второй вариант ... он, кстати, предпочтительнее
Записан
AlexTwo
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 7



« Ответ #19 : 06.07.2014, 00:33:58 »

Спасибо, но второй вариант у меня не сработал, VirtueMart 2.6.6, установил стандартные разделители "." - 4.355.000
Записан
nikonor
Завсегдатай
*****

Репутация: +56/-0
Offline Offline

Пол: Мужской
Сообщений: 513


Content Grabber


« Ответ #20 : 06.07.2014, 00:41:19 »

вообще можете на крайний случай сделать так:
в шаблоне найдите переменную, которая отвечает за вывод цены (например $price) и напишите
Код
str_replace('.', ' ', $price);
где первый параметр - ваш разделитель (у вас точка сейчас), а второй, то на что вы его хотите заменить (в нашем случае на пробел)
Записан
k0st1k
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #21 : 03.01.2015, 21:00:02 »

У меня получилось так, ввел в том злополучном поле (в русской версии звучит как "Тысячный разделитель"): " .".

Еще раз для понятности, в том поле ввел "ПРОБЕЛ и точку" и нажал сохранить. Все заработало. Получаете разделители тысяч.

Вот у меня запятые не удалось убрать, ну копейки. Хочу отображение цены 1 200руб. а у меня 1 200,00.  и 00 гребаных копеек. Azn очень они не нужны. Поможете?
Записан
kapam
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #22 : 25.03.2015, 14:30:37 »

VM3, второй метод сработал, спасибо!
Записан
oleg-od-ua
Новичок
*

Репутация: +1/-0
Offline Offline

Сообщений: 3


« Ответ #23 : 29.06.2015, 20:06:35 »

VM3, второй способ работает.
Огромное человеческое сапсибо тебе, "nikonor"!
Записан
Gig
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 90



« Ответ #24 : 10.07.2015, 19:11:34 »

Всем привет, такая проблема возникла. При вводе цены нули скашиваются, то есть например цена должна быть 1.200р после ввода и сохранения система ставит 1.2р хотя должно быть 1.200р в чем может быть причина?
Записан
Gig
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 90



« Ответ #25 : 10.07.2015, 19:20:38 »

решил проблему, оказывается разные символы стояли в валютах - разделители тысячных, везде проставил запятую, и при вводе цены ставишь - применить параметры.
Записан
Alll77
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 1


« Ответ #26 : 06.02.2016, 22:43:17 »

Спасибо! Второй способ помог ( Joomla! 2.5.28| VirtueMart 3.0.6.2)
Записан
cc20
Новичок
*

Репутация: +1/-0
Offline Offline

Сообщений: 7


« Ответ #27 : 19.02.2016, 13:07:38 »

СПАСИБО! Второй способ ( Joomla! 3.4.8| VirtueMart 3.0.12)
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet