Welcome Guest, Not a member yet? Register   Sign In
CKFinder modal opens homepage and does not show files
#1

I am using CKFinder in a CodeIgniter project and the problem I have is that when I click to open the modal to upload new media the modal shows the homepage of my project and not the files in the folder. I am rebuilding the project from another project, so in earlier stages, CKFinder was working well. Things I suspect caused the problem:
  1. I changed the session driver from 'files' to database

  2. When I first built the project is was on http now it is on https
Useful information:
  1. After closer investigation, I found that when I open the modal it makes a request to connector.php but that gives a status code of 307 (temporary redirect) this then redirects to my homepage.

  2. I get the same results when I open CKFinder from the sample pages
I have it configured that all users are allowed to use ckfinder but I am suspecting that this is maybe not working so when anyone calls to ckfinder redirects take place and the modal calls the homepage instead.
 I would appreciate any assistance.
Reply
#2

I found the problem. In order to use sessions in ckfinder config.php I used this:
Code:
// Include the codeigniter framework
define("REQUEST", "external");
ob_start();
require('index.php');
ob_end_clean();
$CI =& get_instance();
$CI->load->library('session'); //if it's not autoloaded in your CI setup
This served me we when I first implemented in. But after reusing this ckfinder folder in another project with a few changes (see question) it started giving me problems. The problem was solved when I removed that piece of code. I'll have to figure out how to access session variables in another manner.
Reply
#3

It is possible, in the past I modified the bootstrapping process of the framework. In this case I loaded the framework with calling a dummy controller and then session (database-driven) got accessible. Maybe there is an easier way, anyway, it is what I've got. Here is an example on how I load a similar filemanager: https://github.com/ivantcholakov/starter...browse.php

You need two modes:

- Normal MVC loading for the ordinary site pages;

- Loading the framework from a different front-controller file (not index.php, but which is the file-browser for example, there may be others, upload, etc.) and in this case the framework calls a dummy controller that does nothing. The alternative front-controller does the job and accesses the session using the already initialized framework and session library.
Reply
#4

The easiest way to implement it are looking at how CodeIgniter database session library works and copying that source code into a custom library for CKFinder and re-writing those DB connections with PDO (or MySQLi)
Reply




Theme © iAndrew 2016 - Forum software by © MyBB