Jump to content
Jhonas Nascimento

Envio de variável

Recommended Posts

Bom dia,
tenho um sistema de cadastro onde cadastra nome e RG somente, porem antes de se
cadastrar o sistema pesquisa se existe o registro, se não ele redireciona para a tela de cadastro.
Bom só que preciso que quando ele redirecionar para a tela de cadastro envia o numero do RG
pesquisado para a tela de cadastro para que o usuário não tenha que digitar novamente,
porem a variável não esta sendo localizada ou não esta sendo passada coloquei o include_onde mas mesmo assim não localiza:
Esse é meu DAO onde faz as operações de B.D:
<?php

include_once 'connection.php';

class visitanteDAO {

    function getInstance() {

        if (!isset(self::$instance)) {
            return self::$instance;
        }
    }

   function pesquisarVisitanteDao(Visitante $visitante) {
        try {

            $sql = "SELECT nome_visitante, doc_iden FROM visitante WHERE doc_iden = :doc_iden";

            $p_sql = Conexao::getInstance()->prepare($sql);

            $p_sql->bindValue(":doc_iden", $visitante->getDoc_iden());

            $p_sql->execute();

            $rows = $p_sql->fetch(PDO::FETCH_ASSOC);

            if ($rows !== false) {

                $visitante = new Visitante();
                $visitante->setDoc_iden($rows['doc_iden']);
                $visitante->setNome_visitante($rows['nome_visitante']);

                return $visitante;
            } else if ($rows === false) {
                header("location: ../src/cadastro.php");
            }
        } catch (Exception $e) {
            
        }
    }
}


Esse PHP abaixo, é o que recebe os dados da View(paginas)

<?php

include_once 'visitanteDAO.php';
$visitante_view = null;

$instancia_visitanteController = new visitanteController();

$visit = new Visitante();

$validacao = new validation();

if (isset($_POST['form_enviado'])) {
    if ($_POST['form_enviado'] === 'pesquisar') {
        if (isset($_POST['doc_iden'])) {

            $doc_iden = $_POST['doc_iden'];

            $visit->setDoc_iden($doc_iden);

            $visitante_view = $instancia_visitanteController->pesquisaVisitante($visit);
        } else {
            header("location: ../principal.php");
        }
    }

}

class visitanteController {

    public static function pesquisaVisitante($visitante) {

        $visitanteDAO = new visitanteDAO();
        return $visitanteDAO->pesquisarVisitanteDao($visitante);
    }
}

Aqui abaixo a pagina onde o usuário digita o R.G para pesquisa se existe ou não:

<?php
include 'php/visitanteController.php';

?>
<!DOCTYPE html>
<html>
    <head>
        <title>Controle de Visitante    </title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
    <!-- Inicio da Section HEADER -->
    <section id="header">
        <div id="box-header">

            <form method="POST" name="form_header" class="navbar-form navbar-left box-header">
                <!--input para identificação de operação  -->

                <input type="hidden" name="form_enviado" value="pesquisar"/>

                <div class="form-group">
                    <label >Número de R.G:</label>

                    <input type="text" class="form-control" name="doc_iden" id="doc_iden" minlength="8" maxlength="12"
                           placeholder="Digite aqui o RG"/>

                    <button type="submit" class="btn btn-default">Pesquisar</button>

                </div>
            </form>
        </div>
</body>
</html> 

e aqui abaixo a pagina onde preciso fazer com que esse R.G que vem dessa pagina via POST, depois de ter ido para o Controller e constatado que não existe registro ele manda direto para essa pagina de cadastro no campo Doc_iden:

<?php
    include_once 'php/visitanteController.php';
    
?>
<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <title>Cadastro</title>
        <meta charset="UTF-8">
</head>
<body id="body">
    </section>
    <form action="php/visitanteController.php" method="POST" name="cadastro_visitante">
        <input type="hidden" name="form_enviado" value="cadastrar" />
        <div id="login-box">
            <div id="login-box-interno">
                <div id="login-box-label"> Cadastro de Visitante </div>
                <div id="nome-visitante"> Nome </div>
                <div class="input-div" id="input-user">
                    <input type="text" class="form-control" placeholder="Nome" 
                    name="nome_visitante" maxlength="45"/>
                </div>
                <div id="doc-iden"> Documento de identificação </div>
                <div class="input-div" id="input-doc-iden">
                    <input type="text" class="form-control" 
                      placeholder="Documento de identificação" name="doc_iden" id="doc_iden"
                        minlength="8" maxlength="15" />
                </div>
                <ul style="list-style: none;">
                    <li>
                        <button type="submit" value="Cadastrar" class="botoes botoes-default" 
                               style="position: absolute; bottom: 17px; left: 20px;">
                            Cadastrar
                        </button>
                    </li>
                    <li id="btn-cancelar">
                        <a href="principal.php" class="btn btn-default"> Cancelar </a>
                    </li>
                </ul>
            </div>
        </div>
    </form>
</body>
</html>
 

Share this post


Link to post
Share on other sites


header("location: ../src/cadastro.php?rg=$visitante->getDoc_iden()");


<input type="text" value="<?php echo $_GET['rg'] ?>" class="form-control" name="doc_iden" id="doc_iden" minlength="8" maxlength="12"

placeholder="Digite aqui o RG"/>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Claudia França
      Como eu faço para o valor recebido em dólar ou real, mostrar os campos de moeda.
       
       <select >
                  
                  <option value="Real" id="valor" size="8" maxLength="8" >Real R$=</option>
                  
                  <option value="Dolar" id="valor" size="8" maxLength="8" >Dolar $=</option>
                 
              </select>
              
              <input type "text" id="valor"  onBlur= 'pegavalor(this.value);'> </br>
       
       
      Tentei algumas coisas mas, não funciona.
      O resultado tem que aparecer como na imagem.
       

    • By AlexandreHenrique
      Bom dia amigos,
      já tentei de várias formas realizar um  cadastro simples  no banco com PHP 5.6 e não dá certo!
      Não exibe erro, mas não cadastra. Alguém pode dá uma foça?
      Vê o código:
       
          $conexao = mysqli_connect("$host","$user","$senha","$banco")      or die("Error " . mysqli_error($link));          $autor = "Zezim";     $assunto = "Testando";     $status = 0;          $sql_statement="INSERT INTO ticket (idTicket,autor,assunto,status)     VALUES ('','$autor','$assunto','$status')";     mysqli_query($conexao,$sql_statement);
       
    • By olandim
      Olá Pessoal!
      Estou precisando de ajuda, por favor.
      Tenho um teste que abre uma janela, no teste ele procura nesta janela um texto. Mas no php não aceita getsession.
      O retorno do erro para o código abaixo:  Fatal error: Call to undefined method EmitirBoletoContext::getSession() (Behat\Testwork\Call\Exception\FatalThrowableError)
       
       
      /** * @Then devo ver o texto na página que coincide com :arg1 */ public function devoVerOTextoNaPaginaQueCoincideCom($arg1) { //https://stackoverflow.com/questions/32348271/how-to-handle-browser-window-or-tab-using-behat-and-mink-php $windowNames = $this->getSession()->getWindowNames(); if(count($windowNames) > 1) { $this->getSession()->switchToWindow($windowNames[1]); } expect($arg1)->toBe('sacado 1'); }  
       
    • By ChromusMaster
      Bom dia estou iniciando em gerar gráfico com php utilizando o phplot e sql server. Aparentemente a consulta é realizada, mas ele não plota o gráfico. Algúem poderia auxiliar ? Obs.: Precisaria também padronizar para PDO, mas não entendo como fazer essa padronização.
      Edição 1: Fiz algumas alterações no código e agora está em loop
      <?php ob_start(); session_start(); ini_set('display_errors', true); error_reporting(E_ALL); include("conexao/conectasql.php"); require_once("phplot.php"); ?> <?php //SELECIONAR CAMPO DA TABELA E O RESPECTIVO BANCO DE DADOS $select =(" SELECT HAB.ABERTURA,HAB.FECHAMENTO,DATEDIFF(DAY,HAB.ABERTURA,HAB.FECHAMENTO) AS [Diferenca] FROM HATENDIMENTOBASE HAB (NOLOCK) INNER JOIN HATENDENTE (NOLOCK) ON (HATENDENTE.CODCOLIGADA=HAB.CODCOLIGADA AND HATENDENTE.CODATENDENTE=HAB.CODATENDENTE) INNER JOIN PPESSOA ON HATENDENTE.CODPESSOA=PPESSOA.CODIGO INNER JOIN PFUNC ON PFUNC.CODPESSOA=PPESSOA.CODIGO WHERE CODSTATUS IN ('O','R','F','U') AND PFUNC.CHAPA='000837' "); try{ $data = array(); $result = $conexaosql->query($select); $i=0; while($result = $conexaosql->query($select)) { //Imprimindo o resultado da consulta com var_dump var_dump($result); } //CRIANDO AS CONFIGURAÇÕES DO GRÁFICO TIPO 'PIE' $graph = new PHPlot(600,200); $graph->SetDataValues($result);//SETANDO OS VALORES PARA A CONSULTA $graph->SetPlotType("pie"); $graph->SetImageBorderType('plain'); $graph->SetDataType('text-data-single'); $graph->DrawGraph();//PLOTANDO //SEM UTILIDADE PARA QUEM NÃO IMPLEMENTAR CLASSE HEADER.PHP header(""); }catch(PDOException $e) { echo $e; } ?>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.