[_options:protected] => Array в $opts???

Added by Владимир Вендланд 7 months ago

Проблема с массивом $opts от PHP конектора в connector.php прописанно:


$opts = array(
    'root'            => realpath('../../../../uploads'),
    'URL'             => BASE_URL. 'uploads/',
    'rootAlias'       => 'uploads',
    'disabled'     => array('rename', 'edit'),
    'mimeDetect'   => 'finfo',
    'uploadAllow'  => array('image'),
    'uploadDeny'   => array('all'),
    'uploadOrder'  => 'deny,allow',
);

ниже делаю распечатку массива:

print_r($opts); exit;


и через firebug смотрю что в массиве:
elFinder Object
(
    [_options:protected] => Array
        (
            [root] => /home/www/web121/html/mailcenter/uploads
            [URL] => http://mailcenter.XXXXX.biz/uploads/
            [rootAlias] => uploads
            [disabled] => Array
                (
                    [0] => rename
                    [1] => edit
                )

            [dotFiles] => 
            [dirSize] => 1
            [fileMode] => 438
            [dirMode] => 511
            [mimeDetect] => finfo
            [uploadAllow] => Array
                (
                    [0] => image
                )

            [uploadDeny] => Array
                (
                    [0] => all
                )

            [uploadOrder] => deny,allow
            [imgLib] => mogrify
            [tmbDir] => /home/www/web121/html/mailcenter/uploads/.tmb
            [tmbCleanProb] => 1
            [tmbAtOnce] => 5
            [tmbSize] => 48
            [tmbCrop] => 1
            [tmbBgColor] => #ffffff
            [fileURL] => 1
            [dateFormat] => j M Y H:i
            [logger] => 
            [aclObj] => 
            [aclRole] => user
            [defaults] => Array
                (
                    [read] => 1
                    [write] => 1
                    [rm] => 1
                )

            [perms] => Array
                (
                )

            [debug] => 
            [archiveMimes] => Array
                (
                )

            [archivers] => Array
                (
                )

        )

    [_commands:protected] => Array
        (
            [open] => _open
            [reload] => _reload
            [mkdir] => _mkdir
            [mkfile] => _mkfile
            [upload] => _upload
            [paste] => _paste
            [rm] => _rm
            [duplicate] => _duplicate
            [read] => _fread
            [archive] => _archive
            [extract] => _extract
            [resize] => _resize
            [tmb] => _thumbnails
            [ping] => _ping
        )

    [_loggedCommands] => Array
        (
            [0] => mkdir
            [1] => mkfile
            [2] => rename
            [3] => upload
            [4] => paste
            [5] => rm
            [6] => duplicate
            [7] => edit
            [8] => resize
        )

    [_logContext:protected] => Array
        (
        )

    [_mimeTypes:protected] => Array
        (
            [ai] => application/postscript
            [eps] => application/postscript
            [exe] => application/octet-stream
            [doc] => application/vnd.ms-word
            [xls] => application/vnd.ms-excel
            [ppt] => application/vnd.ms-powerpoint
            [pps] => application/vnd.ms-powerpoint
            [pdf] => application/pdf
            [xml] => application/xml
            [odt] => application/vnd.oasis.opendocument.text
            [swf] => application/x-shockwave-flash
            [gz] => application/x-gzip
            [tgz] => application/x-gzip
            [bz] => application/x-bzip2
            [bz2] => application/x-bzip2
            [tbz] => application/x-bzip2
            [zip] => application/zip
            [rar] => application/x-rar
            [tar] => application/x-tar
            [7z] => application/x-7z-compressed
            [txt] => text/plain
            [php] => text/x-php
            [html] => text/html
            [htm] => text/html
            [js] => text/javascript
            [css] => text/css
            [rtf] => text/rtf
            [rtfd] => text/rtfd
            [py] => text/x-python
            [java] => text/x-java-source
            [rb] => text/x-ruby
            [sh] => text/x-shellscript
            [pl] => text/x-perl
            [sql] => text/x-sql
            [bmp] => image/x-ms-bmp
            [jpg] => image/jpeg
            [jpeg] => image/jpeg
            [gif] => image/gif
            [png] => image/png
            [tif] => image/tiff
            [tiff] => image/tiff
            [tga] => image/x-targa
            [psd] => image/vnd.adobe.photoshop
            [mp3] => audio/mpeg
            [mid] => audio/midi
            [ogg] => audio/ogg
            [mp4a] => audio/mp4
            [wav] => audio/wav
            [wma] => audio/x-ms-wma
            [avi] => video/x-msvideo
            [dv] => video/x-dv
            [mp4] => video/mp4
            [mpeg] => video/mpeg
            [mpg] => video/mpeg
            [mov] => video/quicktime
            [wm] => video/x-ms-wmv
            [flv] => video/x-flv
            [mkv] => video/x-matroska
        )

    [_time:protected] => 0
    [_errorData:protected] => Array
        (
        )

    [_fakeRoot:protected] => /home/www/web121/html/mailcenter/uploads
    [_result:protected] => Array
        (
        )

    [_today:protected] => 1318716000
    [_yesterday:protected] => 1318629600

что несовсем понятно, куда подевался массив? И откуда заместо массива появился объект.

Что не так? На другом хостере все работает без проблем. Гугление не помогло, пробовал в .htaccess добавить «php_value zend.ze1_compatibility_mode Off» - непомогло.

У кого нибудь есть идеи, что не так, и в какую сторону копать, чтобы решить проблему.

Заранее спасибо.


Replies (6)

RE: [_options:protected] => Array в $opts??? - Added by Troex Nevelin 7 months ago

Как то у вас всё странно, вы print делаете в connector.php или где-то в классе самого elFinder? какая версия у вас PHP? какой версии elFinder? Откуда у вас в переменной $opts сам класс коннектора взялся? Привидите полный пример как вы инициализируете elFinder

RE: [_options:protected] => Array в $opts??? - Added by Владимир Вендланд 7 months ago

Версия elFinder - 1.2, elRTE - 1.3

print_r делал в connector.php, что-бы посмотреть что там передается.

Инициализую так:

<script type="text/javascript" charset="utf-8">
$().ready(function() {

    elRTE.prototype.options.panels.imt1Panel = [
        'removeformat', 'undo', 'redo', 'bold', 'italic', 'underline', 'forecolor', 'justifyleft', 'justifyright',
        'justifycenter', 'justifyfull', 'formatblock', 'insertorderedlist', 'insertunorderedlist',
        'link', 'unlink', 'anchor', 'elfinder', 'image', 'flash','fullscreen'];

    elRTE.prototype.options.toolbars.imtToolbar = ['imt1Panel'];

    var opts = {
        lang         : 'de',
        doctype         : '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">',
        styleWithCSS : false,
        height       : <?php echo $myEditor_height ?>,
        toolbar      : 'imtToolbar',
        fmAllow         : true,
        cssfiles     : ['<?php echo BASE_URL ?>plugins/elrte/css/elrte-inner.css'],
        fmOpen          : function(callback) {
                        $('<div id="myelfinder" />').elfinder({
                        url : '<?php echo BASE_URL ?>plugins/elfinder/connectors/php/connector.php',
                        lang : 'de',
                        //docked : true
                        dialog : { width : 900, modal : true, title : 'Files' },
                        closeOnEditorCallback : true,
                        editorCallback : callback })}
    };

    $('#<?php echo $myEditor_id ?>').elrte(opts);
});
</script>

На другом сервере все отлично работает, а на третем выдает просто пустое окно.

2011-10-20_000018.jpg - на третем выдает просто пустое окно. (49.1 kB)

2011-10-20_000229.jpg - после print_r($opts); exit; смотрю какие параметры передавались (61.1 kB)

RE: [_options:protected] => Array в $opts??? - Added by Troex Nevelin 7 months ago

Смотрите целиком ответ коннектора в FireBug, и смотрите в error_log, похоже какие-то ошибки вообще мешают выводу

RE: [_options:protected] => Array в $opts??? - Added by Владимир Вендланд 7 months ago

ОК, сделал теперь в ответе коннектора в FireBug стоит:

<br />
<b>Notice</b>:  Undefined index:  extract in <b>/...../elfinder/connectors/php/elFinder.class.php</b> on line <b>325</b><br />
<br />
<b>Warning</b>:  array_keys() [<a href='function.array-keys'>function.array-keys</a>]: The first argument should be an array in <b>/...../elfinder/connectors/php/elFinder.class.php</b> on line <b>325</b><br />
<br />
<b>Fatal error</b>:  Call to undefined function finfo_open() in <b>/...../elfinder/connectors/php/elFinder.class.php</b> on line <b>1349</b><br />

Что-то там не так, есть идеи?

RE: [_options:protected] => Array в $opts??? - Added by Troex Nevelin 7 months ago

Очевидно что у вас не установлен модуль finfo в php или же у вас более новая версия PHP где что-то уже поменяли, укажите в опциях коннектора 'mimeDetect' => 'internal' - это должно решить проблему

RE: [_options:protected] => Array в $opts??? - Added by Владимир Вендланд 7 months ago

спасибо, 'mimeDetect' => 'internal' и error_reporting(0); помогло.

при error_reporting(E_ALL) выдает предупреждения:

<br />
<b>Notice</b>:  Undefined index:  extract in <b>/var/www/web44/html/mails/plugins/elfinder/connectors/php/elFinder.class.php</b> on line <b>325</b><br />
<br />
<b>Warning</b>:  array_keys() [<a href='function.array-keys'>function.array-keys</a>]: The first argument should be an array in <b>/var/www/web44/html/mails/plugins/elfinder/connectors/php/elFinder.class.php</b> on line <b>325</b><br />
<br />
..............

(1-6/6)