Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Обрезаются русские слова в личном кабинете [решено]


Artice

Recommended Posts

Здравствуйте,

Поставил потестировать на denwer.

Есть ошибка в профиле пользователя в кабинете.

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

Та же ситуация и с адресом на русском.

С латиницей проблем нет.

В версии ocStore 0.1.5 подобного поведения не наблюдается.

post-4638-0-35671900-1295175930_thumb.jpg

Надіслати
Поділитися на інших сайтах


Есть ошибка в профиле пользователя в кабинете.

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

В версии ocStore 0.1.5 подобного поведения не наблюдается.

Заметил в 0.1.6 аналогичную проблему, откатился на 0.1.5.

P.S. Заранее прощу прощения, возможно вопрос не в нужную ветку,

но интересует появится ли в OC возможность выводить изображение товара анимированным GIF?

Надіслати
Поділитися на інших сайтах


Настройки пхп покажите.

Прикрепляю php.ini

С одними и теми же настройками в 1.5 все ОК а в 1.6 глюк

Я ставил на денвер чистый ocStore 1.6 ( и одновременно 1.5), заводил нового пользователя магазина с русскими - имя фамилия. После чего в кабинете входил в изменение данных и видел только первые буквы в 1.6 и нормальные имя-фамилия в 1.5

php_htaccess.zip

Надіслати
Поділитися на інших сайтах


Прикрепляю php.ini

С одними и теми же настройками в 1.5 все ОК а в 1.6 глюк

Я ставил на денвер чистый ocStore 1.6 ( и одновременно 1.5), заводил нового пользователя магазина с русскими - имя фамилия. После чего в кабинете входил в изменение данных и видел только первые буквы в 1.6 и нормальные имя-фамилия в 1.5

Обновлялся путем накатывания измененных файлов на рабочий магазин данного глюка не наблюдаю. Захожу в кабинет под своим паролем в данных имя фамилия полностью и по русски
Надіслати
Поділитися на інших сайтах


Обновлялся путем накатывания измененных файлов на рабочий магазин данного глюка не наблюдаю. Захожу в кабинет под своим паролем в данных имя фамилия полностью и по русски

Скорее всего потому, что ты не поменял свои данные в личном кабинете
Надіслати
Поділитися на інших сайтах


Дайте ссылку на магазин И вывод phpinfo(), хотя бы в личку.. Посмотрю. У меня не получается воспроизвести у себя. Ни на php 5.2 ни на 5.3

Онлайн магазина пока нет, заброшу базовый opencart на хостинг в течении ближайших нескольких дней. Если ошибка будет - пришлю ссылку обязательно.

Сегодня проверил на свежескачанном xampp lite. Все что поменял в конфигурации дистрибутива - включил в php.ini php_curl.dll.

ocStore 0.1.6 - результат тот же. Обрезает русские слова в кабинете.

Надіслати
Поділитися на інших сайтах


проблема решена :)

в этом виновата функция strtolower

В файле catalog\model\account\customer.php

Удалите или закомментируйте

		$data['firstname'] = ucwords(strtolower(trim($data['firstname'])));
		$data['lastname'] = ucwords(strtolower(trim($data['lastname'])));
у меня это 29 и 30 строка

чуть не забыл, это проблема проявляется сразу при регистрации пользователя

поэтому в этом же файле удалите или закомментируйте

		$data['firstname'] = ucwords(strtolower(trim($data['firstname'])));
		$data['lastname'] = ucwords(strtolower(trim($data['lastname'])));
		$data['company'] = ucwords(strtolower(trim($data['company'])));
		$data['address_1'] = ucwords(strtolower(trim($data['address_1'])));
		$data['address_2'] = ucwords(strtolower(trim($data['address_2'])));
		$data['city'] = ucwords(strtolower(trim($data['city'])));
у меня это с 5 по 10 строку
Надіслати
Поділитися на інших сайтах


проблема решена :)

Не хочется огорчать, но вопрос все еще открытый.

Потому что вот это размышление:

в этом виновата функция strtolower

в корне неверное.

<?php

/* trim() -> убирает пробелы с обоих сторон строки */
$myVar1 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar1: "<pre>".$myVar1."</pre>"<br />";
echo "myVar1 trim`ed: "<pre>".trim($myVar1)."</pre>"<br />";

/* strtolower -> приводит строку к нижнему регистру */
$myVar2 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar2: "<pre>".$myVar2."</pre>"<br />";
echo "myVar2 trim`ed + strtolower`ed: "<pre>".strtolower(trim($myVar2))."</pre>"<br />";

/* ucwords -> приводит ПЕРВЫЙ символ строки к ВЕРХНЕМУ регистру */
$myVar3 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar3: "<pre>".$myVar3."</pre>"<br />";
echo "myVar3 trim`ed + strtolower`ed + ucwords`ed: "<pre>".ucwords(strtolower(trim($myVar3)))."</pre>"<br />";

?>
Надіслати
Поділитися на інших сайтах

Не хочется огорчать, но вопрос все еще открытый.

Потому что вот это размышление:

в корне неверное.

<?php

/* trim() -> убирает пробелы с обоих сторон строки */
$myVar1 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar1: "<pre>".$myVar1."</pre>"<br />";
echo "myVar1 trim`ed: "<pre>".trim($myVar1)."</pre>"<br />";

/* strtolower -> приводит строку к нижнему регистру */
$myVar2 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar2: "<pre>".$myVar2."</pre>"<br />";
echo "myVar2 trim`ed + strtolower`ed: "<pre>".strtolower(trim($myVar2))."</pre>"<br />";

/* ucwords -> приводит ПЕРВЫЙ символ строки к ВЕРХНЕМУ регистру */
$myVar3 = " aaaФвалФвЛДОПЛДыло   ";
echo "myVar3: "<pre>".$myVar3."</pre>"<br />";
echo "myVar3 trim`ed + strtolower`ed + ucwords`ed: "<pre>".ucwords(strtolower(trim($myVar3)))."</pre>"<br />";

?>

почему в корне не верно?

при установки скрипта на Денвер проблема именно в этом..

и вообще есть ли смысл в этой операции?

почему тогда при редактировании адресов доставки это не используется?

Надіслати
Поділитися на інших сайтах


Теоретически, при использовании UTF-8 это может криво работать. Корректнее использовать mb_* функции работы со строками.

согласен, только не еще раз повторю не вижу смысла в этой операции, зачем заморачиваться на этом?

Надіслати
Поділитися на інших сайтах


Любо глазу :) Так проверь плиз. работает или нет?

вечером проверю, сейчас не могу..

но из сборки это надо убрать :) или тогда добавлять в редактирование адресов :)

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.