Sto seguendo la documentazione di CodeIgniter ed ho un problema con la connessione al database.
Sono nella sezione per la validazione dei form, si dice di inserire nel controller queste righe
Nel db ho una tabella che si chiama users e contiene i campi id, username, password ed email.Codice PHP:$this->form_validation->set_rules('username', 'Username', 'required|min_length[5]|max_length[12]|is_unique[users.username]');
$this->form_validation->set_rules('password', 'Password', 'required|matches[passconf]');
$this->form_validation->set_rules('passconf', 'Password Confirmation', 'required');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email|is_unique[users.email]');
Ho inserito nella tabella qualche utente.
Per la connessione al db ho provato sia impostandola nel file autoload.php che manualmente nel controller, ovviamente non entrambe contemporaneamente.
Ecco cosa succede:
- se vado sulla pagina col form avendo impostato la connessione ottengo una pagina bianca
- se ci vado togliendo la connessione ottengo un errore perché manca la classe $db
- se ci vado senza connessione e senza is_unique nella validazione, il form appare e funziona
Le impostazioni per la connessione al db mi sembrano corrette, eccole
Cosa può esserci che non va?Codice PHP:$active_group = 'default';
$active_record = FALSE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root';
$db['default']['database'] = 'codeigniter';
$db['default']['dbdriver'] = 'mysqli';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

Rispondi quotando