Ir para conteúdo

Matheus Bispo

Members
  • Total de itens

    38
  • Registro em

  • Última visita

Posts postados por Matheus Bispo


  1. Bom dia.

     

    Estou com uma situação, tenho um Objeto chamado parametros.params.

     

    Dentro deste objeto, pode vir 1 item ou 2 item ou 3 item, enfim, N itens.

     

    Exemplo:

     

    Parametros.params{

    carro: "Gol"

    };

     

    ou

     

    Parametros.params{

    modalidade: "Futebol",

    duracao: 90

    };

     

    Percebem que os nomes dos itens, os valores e a quantidade mudaram, isso é o que acontece no meu caso. Continuando...

     

    Tenho 2 funções:

     

    function chamarmetodo1(argument1, argument2){};

     

    function chamarmetodo2(argument){};

     

    Existe algum método de eu criar algo parecido com isso

     

    chamarmetodo1(parametros.params);

     

    chamarmetodo2(parametros.params);

     

    Ou seja, gostaria de chamar o método que for, indiferente de quantos parâmetros ele espera, e com os itens que vem dentro do meu objeto parametros.params, tem como fazer isso?

     

     


  2. Boa tarde colegas programadores, estou com uma dúvida tremenda.

     

    Estou desenvolvendo um sistema para uma loja de veículos, e em uma parte do sistema, em cadastro de clientes, vai aparecer todos os clientes que ela possui em uma tabela(Usando DataTable do bootstrap), em cada cadastro, tenho um botão de editar, que imediatamente, abre uma janela modal com os dados daquele Cliente. Quando eu clico pela primeira vez em algum botão de Editar, ele me abre correto e o fechar é funciona normal. Agora vou clicar no editar novamente, porque anteriormente eu havia clicado no cliente errado, ele me traz os dados correto, mas o botão CANCELAR não funciona mais, preciso dar F5 para ele sumir. O que eu estaria fazendo de errado?

     

    Segue abaixo o meu código:

     

    <!DOCTYPE html>  
     <html>
          <head>  
               <title>Clientes</title>
               <link rel="shortcut icon" href="../assets/img/certi.png" type="image/x-icon" />
               <form name="formulario" method="POST" action="">
               <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>  
               <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />  
               <script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>  
               <script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>            
               <link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css" />
               <link href="../assets/css/bootstrap.min.css" rel="stylesheet">
                   <!-- Include all compiled plugins (below), or include individual files as needed -->
              <script src="../assets/js/bootstrap.min.js"></script>
              <script src="http://jquery-joshbush.googlecode.com/files/jquery.maskedinput-1.2.2.min.js"></script>
              <script src="http://ajax.microsoft.com/ajax/jquery.validate/1.6/jquery.validate.min.js"></script>
              <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.11/jquery.mask.min.js"></script>
              <script src="http://jquery-joshbush.googlecode.com/files/jquery.maskedinput-1.2.2.min.js"></script>

              <script type="text/javascript">
                function Ir(pagina){
                  document.formulario.action = pagina
                  document.formulario.submit();
                }
              </script>

          </head>  
    <body onselectstart="return false" oncontextmenu="return false" ondragstart="return false"
      onMouseOver="window.status='..message perso .. '; return true;">

               <div class="container">
                   
                    <center> <img src='../assets/img/logo_clientes.jpg' class="img-responsive"> </center>
                    <br />
                <?php
                   if(!empty($Dados["btnNovoCad"])):
                       $NovoCad = new CreateCliente();
                       unset($Dados["btnNovoCad"]);
                  $Dados["cli_garagem"] = $_SESSION["id-garagem"];
                       $NovoCad->exeCreate('clientes', $Dados);
                       echo $NovoCad->getMsg();
                   endif;

                   ?>
                    <div class="table-responsive">  
                         <table id="employee_data" class="table table-striped table-bordered">  
                              <thead>  
                                   <tr>  
                                        <td>ID</td>  
                                        <td>Nome</td>
                                        <td>Ações</td>
                                   </tr>  
                              </thead>
                              <?php
                                $ChamarLeitura = new ReadCliente();
                                $ChamarLeitura->LerClientes();
                               foreach($ChamarLeitura->getResultado() as $clientes){
                                     extract($clientes);
                                   echo '  
                                   <tr>  
                                       <td>'.intval($cli_id).'</td>                                      
                                        <td>'.utf8_decode($cli_nome).'</td>
                                        ';?>
                                        <td>
                                            <button type="button" class="btn btn-xs btn-warning" data-toggle="modal" data-target="#myModalEdit" data-whatever="<?php echo $cli_id; ?>" data-whatevernome="<?php echo utf8_decode($cli_nome);?>">Editar</button>
                                        </td>                                   

                                   </tr>    
                                 <?php
                                }  
                              ?>
                         </table>  
                    </div>  
               </div><br>

            <center>
                <button type="button" class="btn btn-success" data-toggle="modal" data-target="#myModalNovo">Novo Cliente</button>
                <button type="button" class="btn btn-primary" onClick="Ir('index');">Voltar ao Menu</button><br><br>
            </center>

     

    <!-- Inicio Modal Novo Cadastro -->
    <div class="modal fade" data-backdrop="static" id="myModalNovo">
          <div class="modal-dialog" role="document">
            <div class="modal-content">
              <div class="modal-header">
                <h3 class="modal-title" id="exampleModalLabel">Cadastrar Cliente</h3>
              </div>
              <div class="modal-body">
                <form name="formularioB" method="POST" action="">
                      <div style="text-align: left;">
                         Nome:*
                         <input type="text" class="form-control" name="cli_nome" required="true" autofocus="true"><br>
                         *Campos obrigatórios
                      </div>
                  <div class="modal-footer">
                    <input type="submit" class="btn btn-success" name="btnNovoCad" value="Salvar">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
                  </div>
                </form>
              </div>        
            </div>
          </div>
        </div>
        <!-- Fim Modal -->

     

    <!-- Inicio Modal Editar Cadastro -->
      <div class="modal fade" id="myModalEdit" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
          <div class="modal-dialog" role="document">
            <div class="modal-content">
              <div class="modal-header">
                <h3 class="modal-title" id="exampleModalLabel">Editar Cliente</h3>
              </div>
              <div class="modal-body">
                <form name="formularioB" method="POST" action="">
                      <div style="text-align: left;">
                         Nome:*
                         <input type="text" class="form-control" name="cli_nome" id="cli_nome" required="true" autofocus="true"><br>
                      </div>
                  <div class="modal-footer">
                    <input type="submit" class="btn btn-success" name="btnEditCad" value="Salvar">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
                    <input type="hidden" name="id-cliente" id="id-cliente" value="">
                  </div>
                </form>
              </div>        
            </div>
          </div>
        </div>
        <!-- Fim Modal -->

     

      <script type="text/javascript">
        $('#myModalEdit').on('show.bs.modal', function (event) {
          var button = $(event.relatedTarget)
          var recipient = button.data('whatever')
          var recipientnome = button.data('whatevernome')
          var modal = $(this)
          modal.find('.modal-title').text('Editar Cliente')
          modal.find('#id-cliente').val(recipient)
          modal.find('#cli_nome').val(recipientnome)
          
        })
      </script>

       </form>
      </body>
     </html>  
     <script>  
     $(document).ready(function(){  
          $('#employee_data').DataTable();  
     });  
     </script>


  3. Bom dia galera, desculpa mas eu já encontrei a resposta, depois de uma boa noite de sono, a resposta parece vir na cabeça, incrível isso. A minha query select está correta, o problema era meu outro método, eu esqueci que estava criando 2 colunas a mais(dono_nome e afetado_nome), por isso dava problema na hora de gerar o relatório. Obrigado a todos e pode encerrar o tópico.


  4. Boa noite galera, estou com uma dúvida.

     

    Tenho uma tabela chamada Usuários, onde lá possuo ID, NOME, EMAIL e SENHA.

     

    Estou desenvolvendo um sistema de relatório de logs, e na minha tabela logs, eu tenho o log_usuario e log_afetado, AMBOS REFERENCIAM o ID da tabela Usuários.

     

    A minha dúvida é... Como eu posso trazer os NOMES desses, no select?

     

    O que eu estou fazendo é esse daqui:

     

    $this->Select = "SELECT log.log_id as id, log.log_ip, log.log_usuario, log.log_afetado, log.log_acao, log.log_tempo, log1.usu_nome as dono_nome, log2.usu_nome as afetado_nome FROM logs log    LEFT OUTER JOIN
                usuarios as log1 ON log_usuario = log1.usu_id LEFT OUTER JOIN
                usuarios as log2 ON log_afetado = log2.usu_id WHERE
                log.log_usuario = :log_usuario";

     

    Mas não estou conseguindo trazer os nomes, utilizando um var_dump(), tráz apenas os IDs. O que eu estaria fazendo de errado?


  5. Boa noite Eisenheim, primeiramente obrigado pelo comentário, sim, esse era o problema, eu não estava chamando o método ExecutarInstrucao(), mas eu tinha passado tantas horas programando, que a cabeça não pensava mais nada. Depois de descansar,  eu descobri a solução implementei e acabei esquecendo de vir aqui comentar.

     

    Vlw aí, problema Resolvido!


  6. Saudações colegas, estou com um problema aqui, que está difícil de resolver, estou criando um login, utilizando PHP POO+PDO, acontece que já tentei de tudo quanto é jeito e não consigo passar deste problema.

     

    Vamos lá, primeiro o meu index.php


                  <input type="email" name="usu_email" id="usu_email" class="form-control"
                  placeholder="email@email.com" required="true" autofocus>
                  <br>
                  <label for="inputPassword">Senha</label>
                    <input type="password"  name="usu_senha" id="usu_senha" class="form-control"
                    placeholder="*******" required="true"><br>
                    <?php
                    $Dados = filter_input_array(INPUT_POST, FILTER_DEFAULT);
                    if(!empty($Dados['btnEnviar'])) {
                        unset($Dados['btnEnviar']);
                        $ChamarUsuario = new Usuario();
                        $ChamarUsuario->logar($Dados['usu_email'], $Dados['usu_senha']);
                        echo $ChamarUsuario->getMsg();
                        var_dump($Dados);
                    }
                    else{

                    }
                    ?>  

     

    Na minha class Usuario

     

        public function logar($Email, $Senha)
        {
            $this->Email = $Email;
            $this->Senha = $Senha;
            $this->verificarEmail();
        }

     

    private function verificarEmail(){
            $Visualizar = new Read();
            $Visualizar->ExeRead('usuarios', 'WHERE usu_email = :usu_email LIMIT :limit', "usu_email={$this->Email}&limit=1");
            if($Visualizar->getResultado()):
                $this->verificarSenha();   
            else:
                $this->Resultado = false;
                $this->Msg = "<div class='alert alert-danger'>Email não existente!</div>";
            endif;
        }

     

    E na minha class Read está assim:

     

    class Read extends Conn
    {
        private $Select;
        private $Values;
        private $Resultado;
        private $Msg;
        private $Query;
        private $Conn;

        public function ExeRead($Tabela, $Termos = null, $ParseString = null)
        {
            if(!empty($ParseString)):
                parse_str($ParseString, $this->Values);
            endif;
            $this->Select = "SELECT * FROM {$Tabela} {$Termos}";

        }

        public function getResultado()
        {
            return $this->Resultado;
        }

        public function getMsg()
        {
            return $this->Msg;
        }

        public function getRowCount()
        {
            return $this->Query->rowCount();
        }

        private function conexao()
        {
            $this->Conn = parent::getConn();
            $this->Query = $this->Conn->prepare($this->Select);
            $this->Query->setFetchMode(PDO::FETCH_ASSOC);
        }

        private function getInstrucao()
        {
            if ($this->Values):
                foreach ($this->Values as $Link => $Valor):
                    if ($Link == 'limit' || $Link == 'offset'):
                        $Valor = (int) $Valor;
                    endif;
                    $this->Query->bindValue(":{$Link}", $Valor, ( is_int($Valor) ? PDO::PARAM_INT : PDO::PARAM_STR));
                endforeach;
            endif;
        }

        private function ExecutarInstrucao()
        {
            $this->Conexao();
            try
            {
                $this->getInstrucao();
                $this->Query->execute();
                $this->Resultado = $this->Query->fetchAll();
            }
            catch (PDOException $e)
            {
                $this->Resultado = null;
                return "<b>Erro ao Ler:</b> {$e->getMessage()}";
            }
        }
    }

     

    Sempre retorna que meu email não existe, mas este email está gravado no banco... O que poderia estar errado?

     


  7. Olá pessoal, estava doido atrás desta resposta, depois vi uma vídeo aula e consegui descobrir.

     

    A resposta é até simples, foi só colocar esse comando

     

    $(document).ready(function()
             {
                $("#myModal").modal("show");
             });

     

    DENTRO DA CONDIÇÃO que eu desejo que seja exibida o modal, e retirar da linha do button esse comando 

    data-toggle="modal" data-target="#myModal" 

     

    Obrigado !!

    • +1 1

  8. Olá pessoal, eu estou tentando fazer um formulário de fale conosco, utilizando bootstrap. Comecei esses tempos atrás a mexer com esse framework, não entendo muita coisa ainda, mas a minha dúvida é a seguinte:

     

    Como eu posso fazer para que a janela MODAL apareça APENAS se tal condição for aceita?

     

    <!-- Modal -->
      <div class="modal fade" id="myModal" role="dialog">
        <div class="modal-dialog modal-sm">
          <div class="modal-content">
            <div class="modal-header">
              <h3 class="modal-title">Informação</h3>
            </div>
            <div class="modal-body">
              <p>Preencha todos os Campos!</p>
            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-primary" data-dismiss="modal">OK</button>
            </div>
          </div>
        </div>
      </div>
    </div>
    <!-- FIM Modal --> 

     

     

    <script>
    function Salvar(pagina)
    {
        var nome = formulario.nome.value;
        var email = formulario.email.value;
        var assunto = formulario.assunto.value;
        var mensagem = formulario.mensagem.value;

        if(nome == "" || email == "" || assunto == "" || mensagem == "")
        {
             $('myModal').modal('show');
             return false;
        }
        else
        {  
            document.formulario.action = pagina
            document.formulario.submit();
        }
    }
    </script>

     

    O BOTÃO

     <button type="button" class="btn btn-success" data-toggle="modal" data-target="#myModal" onClick="Salvar('faleconosco2.php');">Salvar</button>

     

    Só que independente de eu mostrar o modal ou não, quando eu clico no botão ele aparece. Como eu poderia fazer ele aparecer SOMENTE dentro da condição?

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.