Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jandrade

Manter dados das variáveis apos trocar de frame

Recommended Posts

Caros.

Estou treinando em Java, fiz uma aplicação que busca dados da visita no banco a partir de parte do nome, retornando nome e seu respectivo ID, guardo todos os Id em uma array, os nomes vão para uma jcombobox onde seleciono o nome que quero, retornando o index do nome escolhido, assim posso com o index buscar o ID respectivo para buscar e carregar todos os dados da visita escolhida.

Ocorre que tudo funciona até o ponto onde vou buscar na array o ID que preciso, neste momento o array já está vazio, preciso saber porque ele está sendo zerado.

 

Como fazer pra ir de uma frame a outra sem preder as informações armazenadas na classe cadastroVisita. 

Desde já, Obrigado.

 

Abaixo está o código da classe principal onde inicio a busca dos nomes e ID no banco.

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       comboboxlistavisitas listuser= new comboboxlistavisitas();
        try {
            
            if(jTextField4.getText()==""||jTextField4.getText().trim().isEmpty()||jTextField4.getText()==null){
                JOptionPane.showMessageDialog(rootPane, "Informar um nome");
                jTextField4.grabFocus();
            }else{
                // aqui seto nome da visita na classe cadastroVisita, o nome digitado na Jtext
                acessocadvis().setNomeVisita(jTextField4.getText().toUpperCase());
               
                //Aqui faço a pesquisa dos nomes no banco e recebo a array dos ID, e também já carrego a com 
                acessocadvis().setArrvisita(caduserDAO.listavisitascombo(acessocadvis().getNomeVisita()));
                
                
                //listuser.setVisible(true);
            }

 

 

Aqui está o método da classe DAO que faz a busca no banco

public ArrayList<Integer> listavisitascombo(String nome){
       /// ArrayList usuarios=new ArrayList();
        comboboxlistavisitas listuser= new comboboxlistavisitas();
        String SELECT3=" SELECT * FROM cadastro WHERE nome_visita LIKE ?";
        //Usuario user1 =new Usuario();
        String temp;
        
       try {
            conn=conexaoBd.conectar();         
            pstm=conn.prepareStatement(SELECT3);
            pstm.setString(1,'%'+nome+'%');
            rs=pstm.executeQuery();
            //System.out.println('%'+nome+'%');
            //DefaultComboBoxModel users= null;
                int i=0;
            while(rs.next()){
                //System.out.println(rs.getString("nome_visita"));
                temp=(rs.getString("nome_visita"));
                arridcombo.add(rs.getInt("indice"));
                listuser.jComboBox1.addItem(temp);///////acessa o jframe e adiciona os itens na combobox
                //System.out.println(arridcombo.get(0));
            }
            listuser.setVisible(true);
          //System.out.println("teste2");
            
        } catch (Exception e) {
            System.err.println("Ocorreu um erro, causa:"+e.getMessage());
            e.printStackTrace();
        }finally{
            conexaoBd.desconectar(conn, pstm, rs);
            //System.out.println("banco fechado");
        }
        return arridcombo;
    }

Este é o código da jcombobox que retorna a index do nome escolhido

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       principal pri=new principal();
       id=jComboBox1.getSelectedIndex();
       pri.setcadastrovisita(id);
       dispose();
           
            
        // TODO add your handling code here:
    }       

 

 

Aqui é onde volto pra classe principal onde irei fazer a busca dos dados completos do nome selecionado, aqui é onde a array com od IDs já esta zerada.

veja que até adicionei uma saáda pra ver o conteúdo da array.

public void setcadastrovisita(int idcombobox){
        this.idcombobox=idcombobox;
        System.out.println(acessocadvis().getArrvisita());
        
        //A linha atribui à variavel o indice da visita correspondente ao id do combobox visita selecionada no combobox.
        int indice= acessocadvis().getArrvisita().get(this.idcombobox);
        //System.out.println(indice);
        
        //cadvis.buscaVisita(indice);// passa o indice para o cadastroVisita buscar os dados no banco
        //acessocadvis().setIdselecvisita(this.idcombobox);
    }

 

 

Minha classe cadastroVisita

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package recepcao;

import java.sql.Array;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import javafx.scene.chart.PieChart.Data;
import javax.swing.JOptionPane;

/**
 *
 * @author at22502
 */
public class cadastroVisita {
    
    private int indice;
    private String nomeVisita;
    private String sobrenomeVisita;
    private String empresaVisita;
    private String docVisita;
    private String placaVeiculo;
    private String tipoVeiculo;
    private String localVisita;
    private String finalidadeVisita;
    private String campo08;
    private String campo09;
    private String funcVisitado;
    private String empresaVisitado;
    private String deptoVisitado;
    private String ramalVisitado;
    private String areaAcesso;
    private String Campo15;
    private Data dataRegistro;
    private Data dataSaida;
    private String campo17;
    private String campo18;
    private String campo19;
    private String campo20;
    private String campo21;
    private String campo22;
    private String campo23;
    private String Campo24;
    private String Campo25;
    private String dataVisita;
    private int qtdVisitas;
    private String foto;
    private String documento1;
    private String documento2;
    private String documento3;
    private String frase;
    private String dataCadastro;
    private ArrayList<Integer>arrvisita=new ArrayList<>();
    private int idselecvisita;
    
    
    
    public cadastroVisita(){
        
    }
    
    ///////////////////////////////////////////////
    ////     METODO CARREGA DADOS VISITA      /////
    ///////////////////////////////////////////////
    public void CaregaCamposVisita(int indice){
      
        String SELECT=" SELECT * FROM usuario WHERE indice=?";
        Connection conn = null;
        PreparedStatement pstm = null;
        ResultSet rs = null;
        String usernome;
        ArrayList<Integer> arridcombo = new ArrayList<>();
        try {
            conn=conexaoBd.conectar();         
            pstm=conn.prepareStatement(SELECT);
            pstm.setInt(1,indice);
            //pstm.setString(2,senha);
            rs=pstm.executeQuery();
            
            while(rs.next()){
                setNomeVisita(rs.getString("nome_visita"));
                setDocVisita(rs.getString("doc_visita"));
                setSobrenomeVisita(rs.getString("sobrenome_visita"));
                setEmpresaVisita(rs.getString("empresa_visita"));
                setPlacaVeiculo(rs.getString("placa_veiculo"));
                setTipoVeiculo(rs.getString("tipo_veiculo"));
                setAreaAcesso(rs.getString("area_acesso"));
                setCampo15(rs.getString("campo15"));
                
            }
            
        } catch (Exception e) {
            System.err.println("Ocorreu um erro, causa:"+e.getMessage());
            e.printStackTrace();
        }finally{
            conexaoBd.desconectar(conn, pstm, rs);
            //System.out.println("banco fechado");
        }
           
    }
        
    
    
    ////////////////////////////////////////////
    //////////////METODOS SET //////////////////
    //////////////////////////////////////////
    
    
    public void setIdselecvisita(int idselecvisita) {
        this.idselecvisita = idselecvisita;
        //System.out.println(this.idselecvisita +" no get id");
        //System.out.println(nomeVisita);
    }

    public void setArrvisita(ArrayList<Integer> arrvisita) {
        this.arrvisita = arrvisita;
        System.out.println(this.arrvisita+" no SET");
       
    }

    public void setIndice(int indice) {
        this.indice = indice;
    }

    public void setNomeVisita(String nomeVisita) {
        this.nomeVisita = nomeVisita;
         //System.out.println(this.nomeVisita+"  cadvisteste");
    }
    

    public void setSobrenomeVisita(String sobreomeVisita) {
        this.sobrenomeVisita = sobreomeVisita;
    }

    public void setEmpresaVisita(String empresaVisita) {
        this.empresaVisita = empresaVisita;
    }

    public void setDocVisita(String docVisita) {
        this.docVisita = docVisita;
    }

    public void setPlacaVeiculo(String placaVeiculo) {
        this.placaVeiculo = placaVeiculo;
    }

    public void setTipoVeiculo(String tipoVeiculo) {
        this.tipoVeiculo = tipoVeiculo;
    }

    public void setLocalVisita(String localVisita) {
        this.localVisita = localVisita;
    }

    public void setFinalidadeVisita(String finalidadeVisita) {
        this.finalidadeVisita = finalidadeVisita;
    }

    public void setCampo08(String Campo08) {
        this.campo08 = Campo08;
    }

    public void setCampo09(String Campo09) {
        this.campo09 = Campo09;
    }

    public void setFuncVisitado(String funcVisitado) {
        this.funcVisitado = funcVisitado;
    }

    public void setEmpresaVisitado(String empresaVisitado) {
        this.empresaVisitado = empresaVisitado;
    }

    public void setDeptoVisitado(String deptoVisitado) {
        this.deptoVisitado = deptoVisitado;
    }

    public void setRamalVisitado(String ramalVisitado) {
        this.ramalVisitado = ramalVisitado;
    }

    public void setAreaAcesso(String areaAcesso) {
        this.areaAcesso = areaAcesso;
    }

    public void setCampo15(String Campo15) {
        this.Campo15 = Campo15;
    }

    public void setDataRegistro(Data dataRegistro) {
        this.dataRegistro = dataRegistro;
    }

    public void setDataSaida(Data dataSaida) {
        this.dataSaida = dataSaida;
    }

    public void setCampo17(String campo17) {
        this.campo17 = campo17;
    }

    public void setCampo18(String campo18) {
        this.campo18 = campo18;
    }

    public void setCampo19(String campo19) {
        this.campo19 = campo19;
    }

    public void setCampo20(String campo20) {
        this.campo20 = campo20;
    }

    public void setCampo21(String campo21) {
        this.campo21 = campo21;
    }

    public void setCampo22(String campo22) {
        this.campo22 = campo22;
    }

    public void setCampo23(String campo23) {
        this.campo23 = campo23;
    }

    public void setCampo24(String Campo24) {
        this.Campo24 = Campo24;
    }

    public void setCampo25(String Campo25) {
        this.Campo25 = Campo25;
    }

    public void setDataVisita(String dataVisita) {
        this.dataVisita = dataVisita;
    }

    public void setQtdVisitas(int qtdVisitas) {
        this.qtdVisitas = qtdVisitas;
    }

    public void setFoto(String foto) {
        this.foto = foto;
    }

    public void setDocumento1(String documento1) {
        this.documento1 = documento1;
    }

    public void setDocumento2(String documento2) {
        this.documento2 = documento2;
    }

    public void setDocumento3(String documento3) {
        this.documento3 = documento3;
    }

    public void setFrase(String frase) {
        this.frase = frase;
    }

    public void setDataCadastro(String dataCadastro) {
        this.dataCadastro = dataCadastro;
    }
   ////////////////////////////////////////////
    ///////    FIM  METODOS SET////////////////
    //////////////////////////////////////////
    
    
    //////////////////////////////////
    /////INICIO METODOS GET//////
    ////////////////////////////////
    

    public int getIdselecvisita() {
        return this.idselecvisita;
    }

    public ArrayList<Integer> getArrvisita() {
        System.out.println(arrvisita+" no GET");
                
        return arrvisita;
    }

    public int getIndice() {
        return indice;
    }

    public String getNomeVisita() {
        return nomeVisita;
    }

    public String getSobreomeVisita() {
        return sobrenomeVisita;
    }

    public String getEmpresaVisita() {
        return empresaVisita;
    }

    public String getDocVisita() {
        return docVisita;
    }

    public String getPlacaVeiculo() {
        return placaVeiculo;
    }

    public String getTipoVeiculo() {
        return tipoVeiculo;
    }

    public String getLocalVisita() {
        return localVisita;
    }

    public String getFinalidadeVisita() {
        return finalidadeVisita;
    }

    public String getCampo08() {
        return campo08;
    }

    public String getCampo09() {
        return campo09;
    }

    public String getFuncVisitado() {
        return funcVisitado;
    }

    public String getEmpresaVisitado() {
        return empresaVisitado;
    }

    public String getDeptoVisitado() {
        return deptoVisitado;
    }

    public String getRamalVisitado() {
        return ramalVisitado;
    }

    public String getAreaAcesso() {
        return areaAcesso;
    }

    public String getCampo15() {
        return Campo15;
    }

    public Data getDataRegistro() {
        return dataRegistro;
    }

    public Data getDataSaida() {
        return dataSaida;
    }

    public String getCampo17() {
        return campo17;
    }

    public String getCampo18() {
        return campo18;
    }

    public String getCampo19() {
        return campo19;
    }

    public String getCampo20() {
        return campo20;
    }

    public String getCampo21() {
        return campo21;
    }

    public String getCampo22() {
        return campo22;
    }

    public String getCampo23() {
        return campo23;
    }

    public String getCampo24() {
        return Campo24;
    }

    public String getCampo25() {
        return Campo25;
    }

    public String getDataVisita() {
        return dataVisita;
    }

    public int getQtdVisitas() {
        return qtdVisitas;
    }

    public String getFoto() {
        return foto;
    }

    public String getDocumento1() {
        return documento1;
    }

    public String getDocumento2() {
        return documento2;
    }

    public String getDocumento3() {
        return documento3;
    }

    public String getFrase() {
        return frase;
    }

    public String getDataCadastro() {
        return dataCadastro;
    }
    /////////////////////////////
    // FIM METODOS GET
    ///////////////////////////////
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ivansilvask83
      Pessoal preciso mostrar na tabela o valor de nome, email e cotas o problema é que não estou conseguindo mostrar a quantidade de cotas porque preciso de 2 variaveis foreach ou 2 foreach.
      segue o codígo:
      <tbody>                                 <?php                                 if(!empty($indicados_nivel)){                                     foreach($indicados_nivel as $indicado){                                         $indicadoInfo = $this->conta_model->InfoUser($indicado); foreach ($cotas as $cota) {                                     ?>                                     <tr>                                     <td width="200">                                          <?php echo $indicadoInfo->nome;?>                                     </td>                                     <td width="250">                                         <?php echo $indicadoInfo->email;?>                                     </td>                                     <td width="50">                                         <?php echo $cota->quantidade; ?> //Aqui Preciso Mostrar a Quantidade de cotas que cada usuario tem//                                     </td>                                 </tr>                                     <?php                                     }                                 }                                 ?> </tbody>  
    • Por Carlos - Aracaju
      Olá, pretendo criar um sistema de sorteio de palavras onde o usuário coloca-se os nomes que quiser e quantos quiser, porem n consigo fazer com que o sorteio seja bem sucedido, não consigo achar uma solução, quem poder me ajudar, desde já agradeço
      esse é meu código:
      <?php if ($_POST) { $controle = 1; $tipo = 'nome'; $quantidade = $_POST['quant']; $rand = rand(1, $quantidade); $tdnome = ''; while($controle <= $quantidade){ $result = $tipo.$controle; $nomes = $_POST[$result]; echo $controle.' - '.$nomes . '<br />'; if ($controle < $quantidade) { $tdnome .= '"'.$nomes.'", '; } else{ $tdnome .= '"'.$nomes.'"'; } $controle++; } print '<br>'.$tdnome.'<br>'; echo "<br><b>sorteado: ".$array[$rand]."</b>"; } ?> <!DOCTYPE html> <html> <head> <title>sorteio</title> <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> <script type="text/javascript"> var numero = 1; function adicionar() { numero++; $("#divPrincipal").append("<input type='text' name='nome"+numero+"' placeholder='nome "+numero+"' value='nome "+numero+"' /><br><br>"); $("#quant").val(numero); $("#numerodenomes").text(numero); } </script> </head> <body> <form name="teste" method="post" action=""> <!-- <textarea name="text"></textarea> --> <input id="quant" type="text" name="quant" value="1" style="display: none;" /> <p ><b>quantidade de nomes:</b> <q id="numerodenomes">1</q></p> <br><br><br><br> <div id="divPrincipal"> <input type="text" name="nome1" placeholder="nome 1" value="nome 1" /> <br><br> </div> <input type="submit" name="enviar" value="Enviar" /> </form> <a href="javascript: adicionar()">Adicionar</a> </body> </html>  
    • Por lamorim1904
      Caros, boa tarde!
       
      Primeiramente me desculpem se estou abrindo tópico repetido ou de maneira errada, procurei aqui no fórum mas talvez a forma que estou procurando ou a minha falta de conhecimento sobre a área não está me permitindo encontrar a solução.
      Não entendo quase NADA de programação e estou realizando um projeto que me cobra um pouco neste sentido, vou tentar explicar:
       
      Estou criando um hotspot inteligente onde o próprio cliente se cadastra, ele preenche um formulário e posterior a isso eu libero a conexão dele.
      O meu problema está depois que ele cria o seu cadastro, as informações vão para meu banco de dados mas nao retornam ao cliente, portanto a conexão não é liberada.
       
      Eu encontrei uma solução mas não estou conseguindo usa-la da maneira que gostaria, após usuário se cadastrar, eu direciono ele para a pagina de login e senha e caso ele digite os dados que ele acabou de preencher, a conexão é liberada. 
       
      Eu gostaria de automatizar esse processo, identificar a variavel X que eu usei para escrever no meu banco de dados e inseri-la no campo de usuario e senha e se possivel submeter a informação para o usuario nem ver essa tela de login e senha. Sabem me dizer se tem como?
       
      Para ficar mais claro, vou postar os codigos;
       
      <NESTE PONTO O CLIENTE JA PREENCHEU O CADASTRO E EU USO AS VARIAVEIS PARA ESCREVER NO MEU BANCO DE DADOS>
      <EU GOSTARIA DE USAR A VARIAVEL $MOBILE COMO USUARIO E SENHA NA PARTE DE JAVA ABAIXO>

      $sql = "INSERT INTO radcheck (UserName, Attribute, op, Value) VALUES ";
      $sql .= "('$MOBILE', 'Cleartext-Password', ':=', '$MOBILE')";
      mysqli_query($strcon,$sql) or die("Erro ao tentar cadastrar registro");

      $sql = "INSERT INTO radreply (UserName, Attribute, op, Value) VALUES ";
      $sql .= "('$MOBILE', 'Mikrotik-Rate-Limit', ':=', '512k/1024k')";
      mysqli_query($strcon,$sql) or die("Erro ao tentar cadastrar registro");
      mysqli_close($strcon);
      echo "Cliente cadastrado com sucesso!";
      ?>
      <html>
      <head><title>...</title></head>
      <body>
      $(if chap-id)
      <noscript>
      <center><b>JavaScript required. Enable JavaScript to continue.</b></center>
      </noscript>
      $(endif)
      <center>If you are not redirected in a few seconds, click 'continue' below<br>
      <form name="redirect" action="http://201.82.110.3/mkloginteste2.php" method="post">
      <input type="hidden" name="mac" value="$(mac)">
      <input type="hidden" name="ip" value="$(ip)">
      <input type="hidden" name="username" value="$MOBILE">
      <input type="hidden" name="link-login" value="$(link-login)">
      <input type="hidden" name="link-orig" value="$(link-orig)">
      <input type="hidden" name="error" value="$(error)">
      <input type="hidden" name="chap-id" value="$(chap-id)">
      <input type="hidden" name="chap-challenge" value="$(chap-challenge)">
      <input type="hidden" name="link-login-only" value="$(link-login-only)">
      <input type="hidden" name="link-orig-esc" value="$(link-orig-esc)">
      <input type="hidden" name="mac-esc" value="$(mac-esc)">
      <input type="submit" value="continue">
      </form>
      <script language="JavaScript">
      <!--
         document.redirect.submit();
      //-->
      </script></center>
      </body>
      </html>
    • Por Jefferson andre
      Ola,
       
      Criei uma rotina que eh chamada dentro do html, esta rotina abre um banco de dados e pega os valores de algumas variaveis contendo caminhos para video aulas e entao fecha o banco de dados, ao retornar ao html eu quero usar estas variaveis para abrir videos que estarao sendo demonstrados em forma de links.
       
      A mesma situacao foi resolvida dentro do php com imagens para uma outra situacao mas nao consigo fazer isso para videos, se eu conseguir nao preciso puxar as variaveis para o html.
      <?php
      // fazendo uma conexão com o banco de dados
      include("conexao.php");
      //pesquisa
      $resultado = $arquivo->query("SELECT * FROM divulgacao WHERE ativo = 'S' AND tipo = 'IM'");
      if (false === $resultado) {
          echo mysqli_error();
      }
      $linha=mysqli_fetch_array($resultado);
      $caminho_divulgacao = $linha["caminho"];
       
      //echo "<font face='Arial'><span class='style14'>$caminho_divulgacao</span></font>";
      $exibir = "<img src=".$caminho_divulgacao." /><br />";
      echo $exibir ;
       
      mysqli_close($arquivo);
      ?>
       
      Alguma dica ?
    • Por MAKAVELIQUE
      Saudações, criei meu perfil hoje, sou iniciante neste mundo da programação, alguém poderia me ajudar a compreender isso? é um código em javascript que eu estou escrevendo,    variáveis b1, b2, b3 e c1, c2 e c3 recebem valores parecidos com estes, contudo,   parece que os if´s não estão fazendo as devidas verificações pra abrir o document.write de acordo com cada condição...
      <script> function teste() {     img1.src = "foto.png";                b1="J";// esses valores podem variar...     c1="C";// esses valores podem variar...     b2="J";// esses valores podem variar...     c2="C";// esses valores podem variar...     b3="J";// esses valores podem variar...     c3="C";// esses valores podem variar...     if(b1 == c1 && b1 == b3){//daqui pra baixo parece que não funciona...     if(c1==c2 && c2==c3){                 document.write ("1");     }         if(c1!=c2 && c2 != c3 && c1!= c3){     document.write ("2"); }          if(c1== c2 && c1 != c3 or c2 == c3 && c2 != c1 or c1== c3 && c2 != c1 ){       document.write ("3"); } } } </script> <a href="#" onClick="teste();"><img style="position:absolute; left:20px; top:275px; " src="imagem.gif" name="img1"/></a>  
      <script> //Observação: assim funciona:  function teste() { img1.src = "foto.png";  } </script> <a href="#" onClick="teste();"><img style="position:absolute; left:20px; top:275px; " src="imagem.gif" name="img1"/></a>  
×

Informação importante

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