//Controller
public function index(){
$this->load->library('pagination');
$config['base_url'] = 'http://localhost/www/cipadrao/usuario/index/';
$config['per_page'] = 5;
$config['num_links'] = 5;
$config['total_rows'] = $this->count();
$limit[0] = $config['per_page'];
$limit[1] = $this->uri->segment(3) ? $this->uri->segment(3) : 0;
$this->pagination->initialize($config);
//selecionando os dados
$this->data['usuarios'] = $this->usuario->findAll(null, null, $limit);
$this->data['pagination'] = $this->pagination->create_links();
//padronizando o caminho da página
$page = setPage($this->data['module'], 'lista');
//chamando a page pelo template
$this->template->view($page, $this->data);
}
//retorna a quantidade de registros da consulta
private function count($where=null){
$this->load->model('usuario_model');
return $this->usuario_model->count($where);
}
//View
<table border="1" width="100%">
<tr>
<td>Id</td>
<td>Nome</td>
<td>Email</td>
<td>Alterar</td>
<td>Excluir</td>
</tr>
<?php
if(count($usuarios)){
foreach($usuarios as $usuario){
$buffer = null;
$buffer .= '<tr>';
$buffer .= '<td>'.$usuario['usuario_id'].'</td>';
$buffer .= '<td>'.$usuario['usuario_nome'].'</td>';
$buffer .= '<td>'.$usuario['usuario_email'].'</td>';
$buffer .= '<td><a href="'.base_url('usuario/edit/'.$usuario['usuario_id']).'">Alterar</a></td>';
$buffer .= '<td><a href="'.base_url('usuario/delete/'.$usuario['usuario_id']).'">Excluir</a></td>';
$buffer .='</tr>';
echo $buffer;
}
}
else{
echo 'Nenhum registro encontrado.';
}
?>
</table>
<br/>
<div id="pagination"><?php echo $pagination; ?></div>
terça-feira, 28 de outubro de 2014
domingo, 26 de outubro de 2014
HighCharts com Ajax/Codeigniter - Parte02
<?php
class Vendas{
}
?>
class Vendas{
public function dadosGrafico(){
$categorias[] = 'Semana 1' ;
$categorias[] = 'Semana 2' ;
$categorias[] = 'Semana 3' ;
$categorias[] = 'Semana 4' ;
$series_data[] = array('name' => 'Primeiro Mês', 'data' => array(rand(1,5), rand(5,10), rand(10,15), rand(15,20)));
$series_data[] = array('name' => 'Segundo Mês', 'data' => array(rand(1,5), rand(5,10), rand(10,15)));
$series_data[] = array('name' => 'Segundo Mês', 'data' => array(rand(1,5), rand(5,10), rand(10,15)));
$dados = array( 'series_data' => $series_data, 'categories' => $categorias);
echo json_encode($dados);
echo json_encode($dados);
}
}
?>
sexta-feira, 24 de outubro de 2014
HighCharts com Ajax/Codeigniter - Parte01
//Na página HTML
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<div id="chartContainer" style="width:500px; height:500px;"></div>
//No arquivo JavaScript
//variaveis
var chart1;
var timeGrafico;
//chamando a função para atualizar o gráfico
$(function(){
atualiza_chart();
});
//função para buscar os dados e atualizar as informações do gráfico
function atualiza_chart() {
$.post(base_url+'vendas/dadosGrafico', {}, function(data) {
var chart1 = new Highcharts.Chart({
chart: {
renderTo: 'chartContainer',
type: 'line',
},
title: {
text: 'Titulo do Gráfico'
},
xAxis: {
categories: data.categories
},
yAxis: {
title: {
text: 'Valores'
}
},
series: data.series_data
});
//grafico se atualiza a cada 1minuto
timeGrafico = setTimeout(function(){atualiza_chart()}, 60000 );
}, 'json');
}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<div id="chartContainer" style="width:500px; height:500px;"></div>
//No arquivo JavaScript
//variaveis
var chart1;
var timeGrafico;
//chamando a função para atualizar o gráfico
$(function(){
atualiza_chart();
});
//função para buscar os dados e atualizar as informações do gráfico
function atualiza_chart() {
$.post(base_url+'vendas/dadosGrafico', {}, function(data) {
var chart1 = new Highcharts.Chart({
chart: {
renderTo: 'chartContainer',
type: 'line',
},
title: {
text: 'Titulo do Gráfico'
},
xAxis: {
categories: data.categories
},
yAxis: {
title: {
text: 'Valores'
}
},
series: data.series_data
});
//grafico se atualiza a cada 1minuto
timeGrafico = setTimeout(function(){atualiza_chart()}, 60000 );
}, 'json');
}
segunda-feira, 29 de setembro de 2014
Templates no Codeigniter Parte02 (Personalização)
//application/libraries/Template.php
function view($page, $data = null){
if(!is_null($page) && $page != ''){
$title = !isset($data['titulo']) || is_null($data['titulo']) || empty($data['titulo']) ? $this->title : $data['titulo'];
$this->write('title', trim($title));
$this->write_view('content', $page, $data);
$this->render();
}
else{
die('Template => Pagina em branco!');
}
}
//application/controllers/usuario.php
public function index(){
//dados
$dados['dados'] = array('nome' => 'João da Silva', 'idade' => 30);
//titulo da página
$dados['titulo'] = 'Lista de Usuários';
//padronizando o caminho da página
$pagina = 'usuario/lista';
//chamando a pagina pelo template
$this->template->view($pagina, $this->dados);
}
function view($page, $data = null){
if(!is_null($page) && $page != ''){
$title = !isset($data['titulo']) || is_null($data['titulo']) || empty($data['titulo']) ? $this->title : $data['titulo'];
$this->write('title', trim($title));
$this->write_view('content', $page, $data);
$this->render();
}
else{
die('Template => Pagina em branco!');
}
}
//application/controllers/usuario.php
public function index(){
//dados
$dados['dados'] = array('nome' => 'João da Silva', 'idade' => 30);
//titulo da página
$dados['titulo'] = 'Lista de Usuários';
//padronizando o caminho da página
$pagina = 'usuario/lista';
//chamando a pagina pelo template
$this->template->view($pagina, $this->dados);
}
quinta-feira, 25 de setembro de 2014
Templates no Codeigniter Parte01 (Instalação/Configurações)
1- Fazer o download da library Template em:
http://williamsconcepts.com/ci/codeigniter/libraries/template/download.html
2 - Colocar os arquivos nas suas pastas respectivas
/libraries/Template.php para /application/system/libraries/
/config/template.php para /application/config/
/views/template.php para /application/views/
3 - Em /config/template.php adicionar o valor "title":
$template['default']['regions'] = array(
'title',
'header',
'content',
'footer',
);
4 - No método do controller adiocionar as chamadas do template:
public function index(){
//carregando a biblioteca
$this->load->library('template');
//array de dados para serem mostrados na view
$data = array('blog' => 'phpephp.blogspot.com', 'post' => 'Templates no Codeigniter');
//passando os parâmetros para o template
$this->template->write('title', 'Templates no Codeigniter');
$this->template->write('header', 'Cabeçalho do template');
$this->template->write_view('content', 'pasta/nome_da_view', $data);
$this->template->write('footer', 'Rodapé do template');
//chamando o template/página
$this->template->render();
}
5 - No arquivo de view colar o código:
<?php
echo 'Blog: '.$blog;
echo '<br>Post: '.$post.'<br>';
?>
6 - Verifique se o arquivo /application/views/template.php está assim:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><?= $title ?></title>
<link rel="stylesheet" type="text/css" href="main.css" />
</head>
<body>
<div id="wrapper">
<div id="header">
<?= $header ?>
</div>
<div id="main">
<div id="content">
<h2><?= $title ?></h2>
<div class="post">
<?= $content ?>
</div>
</div>
</div>
<div id="footer">
<?= $footer ?>
</div>
</div>
</body>
</html>
http://williamsconcepts.com/ci/codeigniter/libraries/template/download.html
2 - Colocar os arquivos nas suas pastas respectivas
/libraries/Template.php para /application/system/libraries/
/config/template.php para /application/config/
/views/template.php para /application/views/
3 - Em /config/template.php adicionar o valor "title":
$template['default']['regions'] = array(
'title',
'header',
'content',
'footer',
);
4 - No método do controller adiocionar as chamadas do template:
public function index(){
//carregando a biblioteca
$this->load->library('template');
//array de dados para serem mostrados na view
$data = array('blog' => 'phpephp.blogspot.com', 'post' => 'Templates no Codeigniter');
//passando os parâmetros para o template
$this->template->write('title', 'Templates no Codeigniter');
$this->template->write('header', 'Cabeçalho do template');
$this->template->write_view('content', 'pasta/nome_da_view', $data);
$this->template->write('footer', 'Rodapé do template');
//chamando o template/página
$this->template->render();
}
5 - No arquivo de view colar o código:
<?php
echo 'Blog: '.$blog;
echo '<br>Post: '.$post.'<br>';
?>
6 - Verifique se o arquivo /application/views/template.php está assim:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><?= $title ?></title>
<link rel="stylesheet" type="text/css" href="main.css" />
</head>
<body>
<div id="wrapper">
<div id="header">
<?= $header ?>
</div>
<div id="main">
<div id="content">
<h2><?= $title ?></h2>
<div class="post">
<?= $content ?>
</div>
</div>
</div>
<div id="footer">
<?= $footer ?>
</div>
</div>
</body>
</html>
segunda-feira, 22 de setembro de 2014
Estrutura Codeigniter - Parte03 (Helper)
<?php
//padronizando o caminho da página pelo módulo
function setPage($module, $page){
if(!is_null($module) || !empty($module)){
if(!is_null($page) || !empty($page)){
return strtolower($module.'/'.$page);
}
else{
die('Pagina nao encontrada!');
}
}
else{
die('Modulo nao encontrado!');
}
}
?>
//padronizando o caminho da página pelo módulo
function setPage($module, $page){
if(!is_null($module) || !empty($module)){
if(!is_null($page) || !empty($page)){
return strtolower($module.'/'.$page);
}
else{
die('Pagina nao encontrada!');
}
}
else{
die('Modulo nao encontrado!');
}
}
?>
sexta-feira, 19 de setembro de 2014
Estrutura Codeigniter - Parte02 (Controller)
<?php
class Usuario extends CI_Controller{
//array dados da classe
private $data = array();
public function __construct(){
parent::__construct();
$this->load->model('usuario_model', 'usuario');
$this->data['module'] = __CLASS__;
}
/********************métodos principais********************/
//mostrando a lista de registros
public function index(){
//selecionando os dados
$this->data['usuarios'] = $this->usuario->findAll();
//padronizando o caminho da página
$page = setPage($this->data['module'], 'lista');
//chamando a page pelo template
$this->template->view($page, $this->data);
}
//cadastrando ou alterando o registro
public function edit($id=null){
$page = setPage($this->data['module'], 'form');
//se formulário for submetido
if($this->input->post()){
//setando os valores a serem enviado ao bd
$data= $this->setData($this->input->post());
//alteracao
if(!is_null($id)){
$this->usuario->update($id, $data);
}
//cadastro
else{
$this->usuario->insert($data);
}
$this->index();
}
else{
//alteracao
$data=array();
if(!is_null($id)){
$data = $this->usuario->findById($id);
}
//setando os valores vindos do bd
$this->data['data'] = $this->setData($data);
//page do formulário
$this->template->view($page, $this->data);
}
}
//excluindo o registro
public function delete($id){
$this->usuario->delete($id);
$this->index();
}
/********************métodos auxiliares********************/
//setando os valores
private function setData($data=array()){
$values= array(
'usuario_id' => isset($data['usuario_id']) ? $data['usuario_id'] : null,
'usuario_nome' => isset($data['usuario_nome']) ? $data['usuario_nome'] : null,
'usuario_email' => isset($data['usuario_email']) ? $data['usuario_email'] : null,
'usuario_senha' => isset($data['usuario_senha']) ? md5($data['usuario_senha']) : null,
);
return $values;
}
}
?>
class Usuario extends CI_Controller{
//array dados da classe
private $data = array();
public function __construct(){
parent::__construct();
$this->load->model('usuario_model', 'usuario');
$this->data['module'] = __CLASS__;
}
/********************métodos principais********************/
//mostrando a lista de registros
public function index(){
//selecionando os dados
$this->data['usuarios'] = $this->usuario->findAll();
//padronizando o caminho da página
$page = setPage($this->data['module'], 'lista');
//chamando a page pelo template
$this->template->view($page, $this->data);
}
//cadastrando ou alterando o registro
public function edit($id=null){
$page = setPage($this->data['module'], 'form');
//se formulário for submetido
if($this->input->post()){
//setando os valores a serem enviado ao bd
$data= $this->setData($this->input->post());
//alteracao
if(!is_null($id)){
$this->usuario->update($id, $data);
}
//cadastro
else{
$this->usuario->insert($data);
}
$this->index();
}
else{
//alteracao
$data=array();
if(!is_null($id)){
$data = $this->usuario->findById($id);
}
//setando os valores vindos do bd
$this->data['data'] = $this->setData($data);
//page do formulário
$this->template->view($page, $this->data);
}
}
//excluindo o registro
public function delete($id){
$this->usuario->delete($id);
$this->index();
}
/********************métodos auxiliares********************/
//setando os valores
private function setData($data=array()){
$values= array(
'usuario_id' => isset($data['usuario_id']) ? $data['usuario_id'] : null,
'usuario_nome' => isset($data['usuario_nome']) ? $data['usuario_nome'] : null,
'usuario_email' => isset($data['usuario_email']) ? $data['usuario_email'] : null,
'usuario_senha' => isset($data['usuario_senha']) ? md5($data['usuario_senha']) : null,
);
return $values;
}
}
?>
Assinar:
Postagens (Atom)