2016-05-04 5 views
0

Ich habe Probleme bei der ersten Verwendung von ElFinder mit CodeIgniter. Ich habe das Installations-Wiki gefolgt, aber ich erhalte den folgenden Fehler "Verbindung zum Backend nicht möglich". Kann mir jemand helfen? Ich bin verloren.ElFinder mit CodeIgniter | Verbindung zum Backend nicht möglich

Here the error: 
[enter image description here][1] 

Here is an example of the code that i think is the key: 

Die elfinder URL ist:/home/optcenter/www/codeigniter/application/Bibliotheken

the upload forlder url: 

home/optcenter/www/codeigniter/uploads

Dies ist meine Elfinder_lib.php Datei

> <?php if (!defined('BASEPATH')) exit('No direct script access 
> allowed'); 
>  
>  include_once dirname(__FILE__).DIRECTORY_SEPARATOR.'elfinder/elFinderConnector.class.php'; 
> include_once 
> dirname(__FILE__).DIRECTORY_SEPARATOR.'elfinder/elFinder.class.php'; 
> include_once 
> dirname(__FILE__).DIRECTORY_SEPARATOR.'elfinder/elFinderVolumeDriver.class.php'; 
> include_once 
> dirname(__FILE__).DIRECTORY_SEPARATOR.'elfinder/elFinderVolumeLocalFileSystem.class.php'; 
>  
>  class Elfinder_lib { public function __construct($opts) { 
>   $connector = new elFinderConnector(new elFinder($opts)); 
>   $connector->run(); } } 

Ex_controller.php

<?php function elfinder_init() { $this->load->helper('path'); $opts = array(
    // 'debug' => true, 
    'roots' => array(
     array( 
     'driver' => 'LocalFileSystem', 
     'path' => set_realpath('../uploads/'), 
     'URL' => site_url('../uploads/') . '/' 
     // more elFinder options here 
    ) 
    ) ); $this->load->library('elfinder_lib', $opts); } 

Teil meiner conector.php

* * @param string $attr attribute name (read|write|locked|hidden) 
* @param string $path file path relative to volume root directory started with directory separator * @return bool|null **/ function access($attr, $path, $data, $volume) {  return strpos(basename($path), '.') === 0  // if file/folder begins with '.' (dot)   ? !($attr 
== 'read' || $attr == 'write') // set read+write to false, other (locked+hidden) set to true   : null;         // else elFinder decide it itself } 


// Documentation for connector options: // https://github.com/Studio-42/elFinder/wiki/Connector-configuration-options $opts = array( // 'debug' => true,  'roots' => array(  array(   'driver'  => 'LocalFileSystem',   // driver for accessing file system (REQUIRED)   'path'   => '../uploads/', // path to files (REQUIRED)   'URL'   => dirname($_SERVER['PHP_SELF']) . '/../files/', // URL to files (REQUIRED)    'uploadDeny' => array('all'),    // All Mimetypes not allowed to upload   'uploadAllow' => array('image', 'text/plain'),// Mimetype `image` and `text/plain` allowed to upload   'uploadOrder' => array('deny', 'allow'),  // allowed Mimetype `image` and `text/plain` only   'accessControl' => 'access'   // disable and hide dot starting files (OPTIONAL)  ) )); 

// run elFinder $connector = new elFinderConnector(new elFinder($opts)); $connector->run(); 

und die Funktion jQuery, die dem div Container rufen:

$(function() { 
     var elf = $('#elfinder').elfinder({ 
      // lang: 'ru',    // language (OPTIONAL) 
      url : 'elfinder/connector.php' // connector URL (REQUIRED) 
     }).elfinder('instance');   
    }); 

Antwort

0

Ich kann sehen, dass Sie Vielleicht müssen einige Teile geändert werden wenn Ihre Elfinder_lib.php ist in application/Bibliotheken und alle Ihre Elfinder Dateien

<?php if (!defined('BASEPATH')) exit('No direct script access 
allowed'); 

include_once 'elfinder/elFinderConnector.class.php'; 
include_once 'elfinder/elFinder.class.php'; 
include_once 'elfinder/elFinderVolumeDriver.class.php'; 
include_once 'elfinder/elFinderVolumeLocalFileSystem.class.php'; 

class Elfinder_lib{ 
    public function __construct($opts){ 
     //for this part see the documentation 
     $connector = new elFinderConnector(new elFinder($opts)); 
     $connector->run(); 
    } 
} 

in Ihrem controller.php

<?php 
function elfinder_init(){ 
    $this->load->helper('path'); 
    $opts = array(
        //'debug' => true, 
       'roots' => array(
            array( 
             'driver' => 'LocalFileSystem', 
             'path' => set_realpath('./uploads/'), 
             'URL' => site_url('./uploads/') . '/' 
             //more elFinder options here 
            ) 
           ) 
       ); 

    $this->load->library('elfinder_lib', $opts); 
} 

jQuery.jd

$(function() { 
     var elf = $('#elfinder').elfinder({ 
      // lang: 'ru',    // language (OPTIONAL) 
      url : 'ex_controller/elfinder_init' // connector URL (REQUIRED) 
     }).elfinder('instance');   
    }); 
+0

das gleiche Problem noch. "( –

+0

können Sie die Fehlermeldung senden Sie bitte – elddenmedio

+0

Können Backend verbinden Backend nicht gefunden –

0

Vielleicht haben Sie vergessen CSRF-Schutz in config.php zu deaktivieren Datei. bearbeiten config.php in Config-Ordner:

$config['csrf_protection'] = TRUE; 

An:

$config['csrf_protection'] = FALSE; 
Verwandte Themen