Codeigniter não pode carregar bibliotecas
Inicialmente, pensei que tinha um problema ao carregar bibliotecas devido ao uso de extensões modulares no Codeigniter.
No entanto, descobri que mesmo com uma instalação limpa do codeigniter, não consigo carregar bibliotecas como oSession library
ou até a biblioteca de migração.
Eu sempre recebo mensagens de erro semelhantes geralmente relacionadas ao carregamento de arquivos.
Aqui está minha mensagem de erro que recebo ao usar a biblioteca de sessões.
Nota: Se eu não usar bibliotecas, tudo funcionará bem.
Erro:
A PHP Error was encountered
Severity: Warning
Message: mkdir() [function.mkdir]: Invalid argument
Filename: drivers/Session_files_driver.php
Line Number: 117
Backtrace:
File: index.php
Line: 301
Function: require_once
An uncaught Exception was encountered
Type: Exception
Message: Session: Configured save path '' is not a directory, doesn't exist or cannot be created.
Filename: \system\libraries\Session\drivers\Session_files_driver.php
Line Number: 119
Backtrace:
File: index.php
Line: 301
Function: require_once
Eu sinto que isso é algum tipo de problema de permissão, mas se estou usando AMPPS, MAMP (Windows) ou XAMP, sempre recebo esse problema.
Alguém tem alguma idéia
OS: Windows 8.1
Servidor web: AMPPS / MAMP (Windows) / XAMP - Todos têm o problema.
Codeigniter: v3.0.0
Config:
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
EDITAR:
Resolvido.
Agora é importante que você use a documentação do CI3. Ao usar o método de banco de dados para sessões, verifique se você usa o SQL atualizado para criar a tabela.
CREATE TABLE IF NOT EXISTS `ci_sessions` (
`id` varchar(40) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
`data` blob NOT NULL,
PRIMARY KEY (id),
KEY `ci_sessions_timestamp` (`timestamp`)
);
Como encontradoaqui. Espero que isso ajude alguém com problemas semelhantes.
Também para o problema inicial se você estiver usando ofiles
driver, certifique-se de definir o$config['sess_save_path']
para algo como'ci_sessions'
ou onde você deseja armazenar. Consulte a resposta @Tpojka para obter mais informações.