Ir ao conteúdo
  • Cadastre-se
Irwing Seiji Ato

PHP Quero alterar um cadastro da empresa

Posts recomendados

Fiz o código porém não está sendo exibido a mensagem que deveria aparecer caso os dados fossem modificados segue embaixo os códigos esse é do alterar_empresa

<?php
require_once '../DAO/EmpresaDAO.php';
require_once '../vou/EmpresaVO.php';
include_once '_msg.php';

$dao = new EmpresaDAO();

if (isset($_GET['cod']) && is_numeric($_GET['cod'])) {
    $cod = $_GET['cod'];
    $dados = $dao->DetalharEmpresa($cod);
    if (count($dados) == 0) {
        header('location: consultar_empresa.php');
    }
} else if (isset($_POST['btnGravar'])) {
    $vou = new EmpresaVO();

    $vou->setIdEmpresa($_POST['codEmp']);
    $vou->setNomeEmpresa($_POST['nome']);
    $vou->setEndereco($_POST['endereco']);
    $vou->setTelefone($_POST['telefone']);

    $ret = $dao->AlterarEmpresa($vou);
    header('location: alterar_empresa.php?cod=' . $_POST['codEmp'] . '&ret=' . $ret);
} else {
    header('location: consultar_empresa.php');
}

?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
    <?php
    include_once '_head.php';
    ?>
    <body>
        <div id="wrapper">
            <?php
            include_once '_topo.php';
            include_once '_menu.php';
            ?>
            <!-- /. NAV SIDE  -->
            <div id="page-wrapper" >
                <div id="page-inner">
                    <div class="row">
                        <div class="col-md-12">
                            <?php
                            if (isset($_GET['ret'])) {
                                ExibirMsg($_GET['ret']);
                            }
                            ?>
                            <h2>Alterar Empresa</h2>   
                            <h5>Aqui você altera as empresas</h5>                       
                        </div>                    
                    </div>
                    <!-- /. ROW  -->
                    <hr />
                    <form method="post" action="alterar_empresa.php">
                        <input type="hidden" name="codEmp" value="<?= $dados[0]['id_empresa'] ?>" />
                        <div class="form-group">
                            <label>Nome da empresa</label>
                            <input class="form-control" placeholder="Digite aqui..." id="nome" name="nome" value="<?= $dados[0]['nome_empresa'] ?>"/>
                            <label class="validar-campo" id="val_nome"></label>
                        </div>
                        <div class="form-group">
                            <label>Endereço</label>
                            <input class="form-control" placeholder= "Digite aqui..." id="endereco" name="endereco" value="<?= $dados[0]['endereco_empresa'] ?>"/>
                            <label class="validar-campo" id="val_endereco"></label>
                        </div>  
                        <div class="form-group">
                            <label>Telefone</label>
                            <input class="form-control" placeholder= "Digite aqui..." id="telefone" name="telefone" value="<?= $dados[0]['telefone_empresa'] ?>"/>
                            <label class="validar-campo" id="val_telefone"></label>
                        </div> 
                        <a button type="submit" class = "btn btn-success" onclick="return ValidarCampos(7)" name="btnGravar">Gravar</a>
                </div>
                </form>
                <!-- /. PAGE INNER  -->
            </div>
            <!-- /. PAGE WRAPPER  -->
        </div>
        <!-- /. WRAPPER  -->
        <!-- SCRIPTS -AT THE BOTOM TO REDUCE THE LOAD TIME-->
        <!-- JQUERY SCRIPTS -->



    </body>
</html>

Esse é o EmpresaDAO

<?php

require_once 'Conexao.php';
require_once 'UtilDAO.php';

class EmpresaDAO extends Conexao {

    public function CadastrarEmpresa(EmpresaVO $vou) {
        if ($vou->getNomeEmpresa() == '' || $vou->getEndereco() == '' || $vou->getTelefone() == '') {
            return 0;
        }
        //1 PASSO: criar um obj que receberá o obj de conexão
        $conexao = parent::retornaConexao();

        //2 PASSO: Criar uma variável que receberá o comando SQL que deverá ser executado 
        $comando = 'insert into tb_empresa (nome_empresa, id_usuario, endereco_empresa, telefone_empresa) value (?,?,?,?)';

        //3 PASSO: Criar um objeto que será configurado para ser executado NO MYSQL
        $sql = new PDOStatement();

        //4 PASSO: O objeto configurado SQL receberá a conexão que vai estar preparada para o comando
        $sql = $conexao->prepare($comando);

        //5 PASSO: Verifica se tem no $comando pontos de interrogação. Se tiver configura o bindValue
        $sql->bindValue(1, $vou->getNomeEmpresa());
        $sql->bindValue(2, UtilDAO::CodigoLogado());
        $sql->bindValue(3, $vou->getEndereco());
        $sql->bindValue(4, $vou->getTelefone());

        try {
            $sql->execute();
            return 1;
        } catch (Exception $ex) {
            echo $ex->getMessage();
            return -1;
        }
    }

    public function AlterarEmpresa(EmpresaVO $vou) {
        if ($vou->getNomeEmpresa() == '' || $vou->getEndereco() == '' || $vou->getTelefone() == '') {
            return 0;
        }
        $conexao = parent::retornaConexao();
        $comando = 'update tb_empresa set nome_empresa = ?, endereco_empresa = ?, telefone_empresa = ? where id_empresa= ?';
        $sql = new PDOStatement();
        $sql = $conexao->prepare($comando);
        $sql->bindValue(1, $vou->getNomeEmpresa());
        $sql->bindValue(2, $vou->getEndereco());
        $sql->bindValue(3, $vou->getTelefone());
        $sql->bindValue(4, $vou->getIdEmpresa());

        try {
            $sql->execute();
            return 1;
        } catch (Exception $ex) {
            return -1;
        }
    }

    public function ConsultarEmpresa() {
        $conexao = parent::retornaConexao();

        $comando = 'select id_empresa, nome_empresa, endereco_empresa, telefone_empresa from tb_empresa where id_usuario = ?';

        $sql = new PDOStatement();
        $sql = $conexao->prepare($comando);

        $sql->bindValue(1, UtilDAO::CodigoLogado());

        //Elimina o índice do array
        $sql->setFetchMode(PDO::FETCH_ASSOC);

        $sql->execute();

        return $sql->fetchAll();
    }
    
    public function DetalharEmpresa($idEmpresa){
        $conexao = parent::retornaConexao();

        $comando = 'select id_empresa, nome_empresa, endereco_empresa, telefone_empresa from tb_empresa where id_usuario = ? and id_empresa = ?';

        $sql = new PDOStatement();
        $sql = $conexao->prepare($comando);

        $sql->bindValue(1, UtilDAO::CodigoLogado());
        $sql->bindValue(2, $idEmpresa);
        //Elimina o índice do array
        $sql->setFetchMode(PDO::FETCH_ASSOC);
        $sql->execute();

        return $sql->fetchAll();
    }

}

Esse é o código para exibir as mensagens 

<?php

function ExibirMsg($ret) {
    switch ($ret) {
        case -3:
            echo '<div class= "alert-warning">
            Usuário não encontrado
            </div>';
            break;
        
        case -2:
            echo '<div class= "alert-warning">
            Senha e repetir senha não conferem
            </div>';
            break;
        
        case -1:
            echo '<div class="alert alert-danger">
                Ocorreu um erro na operação
            </div>';
            break;
        
        case 0:
            echo '<div class="alert alert-warning">
                Preencher o(s) campo(s) obrigatório(s)
            </div>';
            break;
        case 1:
            echo '<div class="alert alert-success">
                Dados gravados com sucesso
            </div>';
            break;                
    }
}

Onde está o erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teria que ver quais os valores que esse $_GET['ret'] está retornando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço para ver quais valores ele está te retornando?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!