Olá, sejam bem vindos à oitava aula do curso de CodeIgniter Essencial do RBtech.info!
Na aula de hoje (pegue um café pois a aula é grande) vou mostrar os detalhes para criar o método de inserção/atualização de configurações no banco de dados, depois, usando esse método vamos criar a rotina para salvar os dados de setup do site quando esse é executado pela primeira vez.
Para finalizar vou mostrar ainda como criar a tela de login, porém não faremos as rotinas para autenticação de usuários, isso fica pra próxima.
Este post faz parte de uma série, confira tudo que já foi publicado sobre o mesmo assunto.
Sou técnico em hardware e desenvolvedor web, e sobre estes dois assuntos comecei a compartilhar aulas e artigos, tornando-me blogueiro em 2008. Em 2010 esse hobby virou profissão, e desde então tenho buscado melhorar e profissionalizar cada vez mais os projetos que mantenho na web.
Atualmente temos 8 comentários para este post. Participe você também, clique aqui e comente sobre o assunto.
Em algum lugar você está mandando uma option sem valor para o banco de dados (ou a função de salvar os dados está errada), vide erro "Column 'option_value' cannot be null". Comece revisando a função update_option do seu model, é bem provável que ela seja o problema uma vez que não há valores, mas sim 'user_login' e NULL nos values do seu SQL.
Revise também a função de login... resumindo: revise seu código, há algo errado e você precisa descobrir o que é.
Bom dia Ricardo,
Muito obrigado pela dica, fiz o que propôs e revisei todo o código e era uma coisa muito simples um fechamento de if, sempre fis os fechamento com { } e não com endif ai fiz confusão , por este motivo a função não recebia os dados no post, agora ta tudo certo, ja estou terminando o seu curso.
Muito obrigado pela atenção, e continue com os cursos são ótimos. e sua didática muito boa.
ResponderMessage: Call to undefined method CI_Session::set_userdate()
Estou recebendo esse erro tanto no set,get quanto no unset
Segue abaixo o código:
session->set_userdate('aviso',$msgs);
}
endif;
if(!function_exists('get_msgs')):
function get_msgs($destroy=true){
$ci = & get_instance();
$retorno=$ci->session->get_userdate('aviso');
if($destroy) $ci->session->unset_userdate('aviso');
}
endif;
ResponderBrayan, você não está trabalhando com datas, mas com dados... olha o nome das suas funções, você está usando datE e não datA no nome. Revise na aula...
Seu erro diz que você está chamando uma função (método) inexistente, nesse caso a primeira coisa é conferir o nome das functions pois possivelmente estão com alguma inconsistência.
Fácil Ricardo. Só uma coisa, o fundo preto do editor, torna alguns códigos inelegíveis, principalmente quando do uso de conectores que usam cores fortes também, em alguns monitores, complicam e devemos procurar um linha dentro de um código fonte. É só uma sugestão!
ResponderEu fiquei muito confuso na parte dos models, eu achei meio complicado a maneira de inserir e atualizar os dados do banco de dados sabe? eu to na parte 2 do painel ainda, eu não sei se você ainda vai explicar mais coisa sobre isso, mas pra mim ainda ta muito confuso
ResponderEmanuel, no começo do curso eu expliquei sobre MVC e mostrei alguns exemplos sobre como tudo deve funcionar, se tiver dúvidas volte para essas aulas e revise o conteúdo, daqui pra frente não será mais abordado esse tipo de explicação.
Responder© 2008-2024 - RBTech.info | Todos os direitos reservados | Hospedado por Innova Host
É proibida a reprodução total ou parcial de qualquer conteúdo deste site.
Bom dia Ricardo primeiramente gostaria de parabeniza-lo pelas excelentes aulas.
Eu estou tendo um problema ao implementar a inserção dos dados no banco o erro ocorre no controller neste codigo
$dados_form = $this->input->post();
//var_dump($dados_form);
//exit;
$this->option->update_option('user_login', $dados_form['login']);
$this->option->update_option('user_email', $dados_form['email']);
$this->option->update_option('user_pass', password_hash($dados_form['senha']), PASSWORD_DEFAULT );
$inserido = $this->option->update_option('setup_executado', 1);
ja revisei tudo mas nada da jeito, talvez vc com sua experiencia consiga ver o que eu não estou vendo!
Essa e a mensagem apresentada no browser:
A PHP Error was encountered
Severity: Notice
Message: Undefined index: login
Filename: controllers/Setup.php
Line Number: 62
Backtrace:
File: E:\xampp\htdocs\CIinicial\site\application\controllers\Setup.php
Line: 62
Function: _error_handler
File: E:\xampp\htdocs\CIinicial\site\index.php
Line: 315
Function: require_once
------------------------------------------------------------------------------------------------------
Um erro no Banco de Dados aconteceu
Error Number: 1048
Column 'option_value' cannot be null
INSERT INTO `options` (`option_name`, `option_value`) VALUES ('user_login', NULL)
Filename: E:/xampp/htdocs/CIinicial/system/database/DB_driver.php
Line Number: 691