Created
January 25, 2013 21:53
-
-
Save marcellobenigno/4638234 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
class Posto_plu extends CI_Controller { | |
function __construct() { | |
parent::__construct(); | |
} | |
function index() { | |
$data['titulo'] = "Cadastro de Postos Pluviométricos"; | |
$sql = "SELECT gid, valor_precipitado, ST_x(the_geom) AS x, ST_y(the_geom) AS y, nome_posto, bacia | |
FROM posto_pluviometrico"; | |
$query = $this->db->query($sql); | |
$data['postos'] = $query->result(); | |
$this->load->view('posto_new', $data); | |
} | |
function insere() { | |
$x = $this->input->post('x'); | |
$y = $this->input->post('y'); | |
$nome_posto = $this->input->post('nome_posto'); | |
$valor_precipitado = $this->input->post('valor_precipitado'); | |
$sql_1 = "INSERT INTO posto_pluviometrico (the_geom, bacia, nome_posto, valor_precipitado) | |
SELECT ST_GeomFromText('POINT($x $y)',29185), | |
bacia.nome_bacia, | |
'$nome_posto', | |
'$valor_precipitado' | |
FROM bacia | |
WHERE | |
ST_CONTAINS(bacia.geom, | |
ST_GeomFromText('POINT($x $y)',29185))"; | |
$query_1 = $this->db->query($sql_1); | |
//pego o último id inserido | |
$id = $this->db->insert_id(); | |
$sql_2 = "SELECT gid, valor_precipitado, ST_x(the_geom) AS x, ST_y(the_geom) AS y, nome_posto, bacia | |
FROM posto_pluviometrico WHERE gid = $id"; | |
$data['posto_plu'] = $this->db->query($sql_2)->row(); | |
$data['msg'] = "Registro Cadastrado com sucesso!"; | |
$this->load->view('sucesso', $data); | |
} | |
function editar($id) { | |
$sql = "SELECT gid, valor_precipitado, ST_x(the_geom) AS x, ST_y(the_geom) AS y, nome_posto, bacia | |
FROM posto_pluviometrico WHERE gid = $id"; | |
$data['posto_plu'] = $this->db->query($sql)->row(); | |
$this->load->view('posto_edit', $data); | |
} | |
function atualizar() { | |
$gid = $this->input->post('gid'); | |
$x = $this->input->post('x'); | |
$y = $this->input->post('y'); | |
$nome_posto = $this->input->post('nome_posto'); | |
$valor_precipitado = $this->input->post('valor_precipitado'); | |
$sql_1 = "UPDATE posto_pluviometrico SET | |
the_geom = ST_GeomFromText('POINT($x $y)',29185), | |
nome_posto = '$nome_posto', | |
valor_precipitado = $valor_precipitado, | |
bacia = (SELECT bacia.nome_bacia FROM bacia | |
WHERE | |
ST_CONTAINS(bacia.geom, | |
ST_GeomFromText('POINT($x $y)',29185)) | |
) | |
WHERE gid = $gid"; | |
$query = $this->db->query($sql_1); | |
$sql_2 = "SELECT gid, valor_precipitado, ST_x(the_geom) AS x, ST_y(the_geom) AS y, nome_posto, bacia | |
FROM posto_pluviometrico WHERE gid = $gid"; | |
$data['posto_plu'] = $this->db->query($sql_2)->row(); | |
$data['msg'] = "Registro Alterado com sucesso!"; | |
$this->load->view('sucesso', $data); | |
} | |
function deletar($id) | |
{ | |
$this->db->where('gid', $id); | |
$this->db->delete('posto_pluviometrico'); | |
redirect('posto_plu'); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment