• Уважаемый Гость! Если вы зарегистрировались на нашем форуме, значит вам нужна помощь! Мы всегда рады вам помочь, еще ни один пользователь не получил отказа! Но мы так же нуждаемся в Вашей поддержке. Проект полностью бесплатный, мы не имеем права требовать от вас денег, нам это и не нужно! Но от любой финансовой поддержки не откажемся. Проект развивается, но иногда очень тяжело его поддерживать, особенно в финансовом отношении. Если у вас есть возможность поддержать нас финансово, мы будем вам очень благодарны! С уважением, команда Оскласс Россия!
  • Изменение в правилах форума! В связи с огромным количеством вопросов поступающих в адрес технической поддержки мы решили изменить правила форума! Просим всех пользователей обратить внимание на данные изменения и четко их соблюдать!
  • Ребята, нуждаемся в программистах! Если хотите зарабатывать и есть время, пишите администраторам сайта. Есть база и инструменты, нужен опыт и знания =)
  • Уважаемые пользователи! На форуме появились разделы по работе с системой Yclas. Yclas - это скрипт доски объявлений. Нужны разработчики.

Проблемы с русификацией "админки" (Windows/IIS)

Статус
Закрыто для дальнейших ответов.

ruvata

Новичок
Win7/WinServer2008R2
IIS (Version 7.0.6000.16386)
PHP 5.4.14

Ошибка "The zip file is not valid" при попытке загрузки языкового пакета из панели администрирования.

\oc-includes\osclass\utils.php
(line 797;
PHP:
function osc_unzip_file($file, $to) {
    if (!file_exists($to)) {
        if (!@mkdir($to, 0766)) {
            return 0;
        }
    }
 
  @chmod($to, 0777);
 
    if (!is_writable($to)) {
        return 0;
    }
 
    if (class_exists('ZipArchive')) {
        return _unzip_file_ziparchive($file, $to);
    }
 
    //if ZipArchive class doesn't exist, we use PclZip
    return _unzip_file_pclzip($file, $to);
}
...)
_unzip_file_ziparchive - в данной конфигурации не работает)
тем не менее альтернативный вариант _unzip_file_pclzip отрабатывает успешно,
надо бы предусмотреть альтернативу не только в случае отсутствия "ZipArchive", но и в случае его "неотработки", переход на _unzip_file_pclzip.
например
PHP:
...
if (class_exists('ZipArchive')) {
    $unzipState = _unzip_file_ziparchive($file, $to))
    if($unzipState != 1){
        return _unzip_file_pclzip($file, $to);
    }
    return $unzipState
}
...
Или пересмотреть конструкцию иначе, с общей логикой "если не одно, так другое".
_________________________________________________________
PS: Проблема специфична для IIS и PHP под Windows, конкретную причину пока определить не удалось, как один из векторов - php_zip.dll

PPS: Не смог найти трекера, где можно было бы обсудить проблему с контрибьюторами и оформить pull request
 

administrator

Блудный сын.
Команда форума
Я не раз писал!
Не используем мы для тестирования Виндовс сервер и не будем, религия не позволяет!
 
Статус
Закрыто для дальнейших ответов.
Верх