Ir para conteúdo

Pellegrini2106

Members
  • Total de itens

    109
  • Registro em

  • Última visita

  • Dias vencidos

    1

Tudo que Pellegrini2106 postou

  1. Pellegrini2106

    Passar classe e metodo por meio de URL amigavél

    Fala galera estou com uma duvida tenho um código em php onde a classe e o método são passados por uma query string onde ele e passado desta forma: "http://localhost/projeto/?url=pessoa&metodo=cadastrarPessoa&id=1". Mas na verdade quero passar na forma de URL amigável pegando ao invés o arquivo pegasse a classe e o método deste jeito "http://localhost/projeto/pessoa/cadastrarPessoa ou se tiver uma consulta pegando a classe, método e o resultado da consulta via URL desta forma: "http://localhost/projeto/pessoa/1. Obrigado Olha o Código Fonte: .htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] index.php <?php /* Chama a Biblioteca Gerenciadora de Template TWIG */ require_once 'vendor/autoload.php'; /* Classe Core */ require_once 'app/core/Core.php'; /* Classe Controle */ require_once 'app/controle/menuControle.php'; require_once 'app/controle/pessoaControle.php'; require_once 'app/controle/erroControle.php'; $template = file_get_contents("app/visao/template/estrutura.php"); ob_start(); $core = new Core(); $core->Start($_GET); $saida = ob_get_contents(); ob_end_clean(); $tplPronto = str_replace('{{Area Dinamica}}', $saida, $template); echo $tplPronto; Core.php -> E a camada onde eu quero transformar a query string em URL amigavél que por sua vez chama a classe controle. <?php class Core { public function Start($urlGet) { $acao = 'index'; if (isset($urlGet['url'])) { $controle = $urlGet['url'] . 'Controle'; } else { $controle = 'menuControle'; } if (!class_exists($controle)) { $controle = "erroControle"; } if (isset($urlGet['metodo'])) { $acao = $urlGet['metodo']; } else { $acao = 'index'; } call_user_func(array(new $controle, $acao), array()); } }
  2. Ola a todos amigos programadores estou com um probleminha ao iniciar uma sessão usando o twig, eu quero apresentar os usuários logados no sistema e caso eu movimente a pagina ele faça a verificação de sessão, mas fique bem claro que eu quero usar o Twig. Como Faço Isso? Podem me ajudar? <?php class loginControle { private $ObjLogin; function __construct() { $this->ObjLogin = new Usuario(); } public function index() { $loader = new Twig\Loader\FilesystemLoader('app/visao/login'); $twig = new Twig\Environment($loader); $template = $twig->load('login_usuario.php'); $template->display(); session_start(); $this->ObjLogin->setUsuario($_POST["txtusuario"]); $this->ObjLogin->setSenha($_POST["txtsenha"]); $loader = new Twig\Loader\FilesystemLoader('app/visao/usuario'); $twig = new Twig\Environment($loader); $template = $twig->load('cadastrar_usuario.php'); if (isset($_POST["btnLogar"])) { if ($this->ObjLogin->logarAdmin()) { $dados = array( 'perfil' => 'Administrador', 'nome' => 'Master', 'usuario' => $this->ObjLogin->getUsuario(), 'senha' => $this->ObjLogin->getSenha() ); $_SESSION['perfil'] = $perfil; $_SESSION['nome'] = $nome; $_SESSION['usuario'] = $usuario; $_SESSION['senha'] = $senha; echo $template->render($dados); } $pegar = $this->ObjLogin->logarUsuario(); foreach ($pegar as $value) { switch ($value["perfil"]) { case "socio": $_SESSION['perfil'] = $value['perfil']; $_SESSION['nome'] = $value['nome']; $_SESSION['usuario'] = $value['usuario']; $_SESSION['senha'] = $value['senha']; header("location:http://localhost/Estoque_12_10_2019/?url=menu&metodo=ctlMenuSocio"); break; case "gerente": $_SESSION['perfil'] = $value['perfil']; $_SESSION['nome'] = $value['nome']; $_SESSION['usuario'] = $value['usuario']; $_SESSION['senha'] = $value['senha']; header("location:http://localhost/Estoque_12_10_2019/?url=menu&metodo=ctlMenuGerente"); break; case "funcionario": $_SESSION['perfil'] = $value['perfil']; $_SESSION['nome'] = $value['nome']; $_SESSION['usuario'] = $value['usuario']; $_SESSION['senha'] = $value['senha']; header("location:http://localhost/Estoque_12_10_2019/?url=menu&metodo=ctlMenuFuncionario"); break; } } } } public function ctlSessaoRestrita() { session_start(); if (isset($_SESSION['usuario']) && (isset($_SESSION['senha']))) { echo "Bem Vindo (a) " . $_SESSION['perfil'] . "(a)" . " - " . $_SESSION['nome']; } else { session_unset(); session_destroy(); header("location:http://localhost/Estoque_12_10_2019/?url=login"); } } public function ctlDestroiSessaoManual() { if (isset($_POST["btnSair"])) { session_start(); session_destroy(); header("location:http://localhost/Estoque_12_10_2019/?url=login"); } } public function ctlDestroiSessaoAutomatico() { session_start(); session_unset(); session_destroy(); header("location:http://localhost/Estoque_12_10_2019/?url=login"); } } cadastrar_usuario.php <h1>SEJA BEM VINDO {{perfil}} - {{nome}} </h1> // AQUI FICA A INFORMAÇÃO DO USUÁRIO LOGADO NO SISTEMA. <div class="cadastro"> <h1 class="bg-success titulo">&nbsp;CADASTRO DE USUÁRIOS:</h1><br> <form class="letras" method="post" action="http://localhost/Estoque_15_10_2019/?url=usuario&metodo=ctlCadastrarUsuario"> <div class="form-row"> <div class="form-group col-md-4"> <label for="nome">NOME:</label> <input type="text" name="txtnome" id="nome" onkeyup="maiuscula('nome')" placeholder="NOME" class="form-control" autofocus required> </div> <div class="form-group col-md-4"> <label for="email">EMAIL:</label> <input type="email" name="txtemail" placeholder="EMAIL" class="form-control" required> </div> <div class="form-group col-md-4"> <label for="perfil">PERFIL:</label> <select required name="cbperfil" class="form-control input-group-addon"> <option value="socio">Socio:</option> <option value="gerente">Gerente:</option> <option value="funcionario">Funcionário:</option> </select> </div> </div> <div class="form-row"> <div class="form-group col-md-4"> <label for="usuario">USUÁRIO:</label> <input type="text" name="txtusuario" placeholder="USUÁRIO" class="form-control" required> </div> <div class="form-group col-md-4"> <label for="senha">SENHA:</label> <input type="password" name="txtsenha" placeholder="SENHA" class="form-control" required> </div> <div class="form-group col-md-4"> <label for="confirmasenha">CONFIRMA SENHA:</label> <input type="password" name="txtconfsenha" placeholder="CONFIRMA SENHA" class="form-control" required> </div> </div> <div class="form-row"> <button type="submit" name="btnCadastrar" class="btn btn-success">Cadastrar: &nbsp;&nbsp;<i class="fas fa-save"></i></button> </div><br> </form> </div>
  3. Pellegrini2106

    Pegar parte da Url

    Ola galera do Fórum estou com probleminha com relação a Url. Chamo essa Url -> http://localhost/Cadastro_20_07_2019/app/visao/pessoa/cadastrar_pessoa.php. Mas eu não quero ela toda eu queria simplificar ela assim oh : http://localhost/Cadastro_20_07_2019/cadastrar_pessoa Criando tipo uma rota mas sem usar Framework!!!!!! Como faço isso!!! Obrigado.
  4. Pellegrini2106

    Pegar parte da Url

    Ronaldo obrigado pela ajuda mas esqueci te falar que existe pastas antes http://localhost/Cadastro_02_08_2019/app/visao/pessoa/cadastrar_pessoa.php. Mas o quando eu coloco este caminho da erro por causa da hierarquia de pastas: Eu quero que ele reconheça com as pastas mas quero que apareça o caminho simplificado para http://localhost/Cadastro_20_07_2019/cadastrar_pessoa. Obrigado!!!
  5. Pellegrini2106

    Regras com relação a mensagens no MVC

    Ola galera do IMasters!!!!!! Estou com uma duvida eu tenho um CRUD em php MVC e queria saber em que camada fica as mensagens depois de uma realização de um evento por exemplo: Cadastro de Pessoa, depois de cadastrada quero que ele emita uma mensagem dizendo que a "PESSOA FOI CADASTRADA COM SUCESSO!!!!" e eu queria saber em que parte ela fica se é no Controle ou na View porque sabemos que no modelo fica a parte referente a manipulação de dados. Obrigado.
  6. Pellegrini2106

    Regras com relação a mensagens no MVC

    Obrigado Grande ShadowDll pela ajuda
  7. Pellegrini2106

    Erro ao redirecionar views pelo menu.

    Olá amigos do fórum estou com um problema e não consigo resolver. Tenho um menu que chama um controle chamado ctlPessoa na classe controller e dentro um método index() e outro metodo cadastrarPessoa(). O problema e quando eu chamo esse controle ele emitiu um erro: A PHP Error was encountered Severity: Notice Message: Undefined variable: confirma Filename: visaoPessoa/cadastrar_pessoa.php Line Number: 2 Backtrace: File: C:\wamp64\www\CodeIgniter_Crud_01_07_2019\application\views\visaoPessoa\cadastrar_pessoa.php Line: 2 Function: _error_handler File: C:\wamp64\www\CodeIgniter_Crud_01_07_2019\application\controllers\ctlPessoa.php Line: 18 Function: view File: C:\wamp64\www\CodeIgniter_Crud_01_07_2019\index.php Line: 315 Function: require_once Explicando o erro: E pq o método cadastro possui uma variavel array que é chamada pela view e serve para logo após a ação do método exibir a seguinte mensagem - " PESSOA CADASTRADA COM SUCESSO": $this->load->view('visaoPessoa/cadastrar_pessoa',$mensagem); <---- passando array de mensagem de confirmação que a pessoa foi cadastrada com sucesso Mas ele da erro pq chama o método index() no ctlPessoa que somente carrega as views ao invés de chamar ctlPessoa/cadastrarPessoa. public function index() { $this->load->view('includes/cabecalho'); $this->load->view('includes/conteudo'); $this->load->view('includes/rodape'); $this->load->view("menuPrincipal/menu_principal"); $this->load->view("visaoPessoa/cadastrar_pessoa"); } Como faço para realizar o carregamento da view e fazer o carregamento do metodo ctlPessoa/cadastrarPessoa.
×

Informação importante

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