Ir ao conteúdo
  • Cadastre-se

Elyton Moreira

Membros Plenos
  • Total de itens

    38
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Utilizando dd($dados) ; ele retorna isso array:3 [▼ "_token" => "MZOBw295E6W5SEtPPnsvV4seev2GeH3M94rsrI71" "nomerespo" => "Mario" "nomealuno" => "Maria Joaquina" ] Olha os print 1- Ele traz da tabela matricula o user_id relacionado ao usuário logado, automaticamente ele traz e joga no form e nele usuário verificar o nome do responsável e o nome do filho e clica no botão para salvar para confirmar. print -> https://prnt.sc/llsn19 2 - Depois que salva o adm vai na aba relatório para verificar se todos os campos foram salvo só que ele só ta salvando o ultimo nome do aluno e do pai queria que salve todos os dados... como estava no primeiro print. print tela do adm -> https://prnt.sc/llsof3
  2. No id do usuário ele tem 2 registro só que na hora de salvar ele só salva 1 registro e não os 2 como deveria Segue Código abaixo -- Controller Lista os dados do usuário no card public function listardados(){ $matricula = Matricula::where('user_id', Auth::id())->get(); //dd($matricula); return view('dashboard.renovacao.teste', compact( 'matricula')); } -- Controller Salvar os Registros public function store(RenovacaoRequest $request){ $user = Auth()->user(); $dados = $request->all(); $renovacao = Renovacao::create($dados); return view('dashboard.renovacao.confirmacao', compact ('renovacao')); } -- View form @extends('layouts.app') @section('content') <div class="container"> <div class="row"> <form class="form-horizontal " id="regForm" action="{{route('renovacao.store')}}" method="POST"> <div class="card-panel white"> <h4 class="center">Solicitar Renovação</h4> <div class="row"></div> {{ csrf_field()}} <right> <a>**Dados Cadastrados**</a> </right> <div class="row"></div> <div class="row"></div> <div class="row"> @foreach($matricula as $matric) <div class="row"> <div class="col s6 m6"> <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} "> <label for="produto">Nome do Pai:</label> <input type="text" class="form-control" name="nomerespo" value="{{ $matric->nomedopai }}"> </div> </div> <div class="col s6 m6"> <div class="input-field {{$errors->has('user_id') ? 'has-error' : ''}} "> <label for="produto">Nome do Aluno(a):</label> <input type="text" class="form-control" name="nomealuno" value="{{ $matric->nomealuno }}"> </div> </div> </div> @endforeach <div class = "row"> <div class="col s12"> <a title="Voltar Para Página Principal" class="btn orange darken-4 btn-info left " href="/admin">Voltar <i class="material-icons left">arrow_back_ios</i> </a> <button type="submit" class="btn orange darken-4 btn-info right">Confirmar <i class="material-icons left">save</i> </button> </div> </div> </div> </div> </form> </div> </div> @endsection
  3. @navegantenarede Banco que estou utilizando é o PostgreSQL, o sistema é praticamente para uma escola onde os pais irão acessar, por isso tô nessa dúvida para hospedagem
  4. @navegantenarede Qual site de hospedagem você indica? Eu tava querendo pegar a hospedagem compartilhada da scriptcase
  5. @Matheus Hirota Essa Hospedagem aguenta tráfego de muitas pessoas conectadas ao mesmo tempo ?
  6. Estou usando o laravel 5.6, a visualização do relatório gostaria de fazer seria em html por enquanto, só estou usando o Controller e o tdd (Test Driven Development) que seria o back-end para testar as funcionalidades, no sistema eu travei na parte do relatório isso eu sei fazer trazer os dados etc, só não sei fazer de uma determinada data nesse caso um relatório de serviços dos últimos 30 dias praticamente.. $usuarios = Usuario::select(DB::raw('MONTH(created_at) AS mes, count(id) AS qtd')) ->groupBy(DB::raw("MONTH(created_at)")) ->orderBy('mes') ->where('Usuario', 'O') ->pluck('mes', 'qtd') ->toArray(); // dd($usuarios);
  7. Funcionou valeu mano pela ajuda hehee !!! Vou deixar a solução completa código fonte caso alguém queira futuramente... // class ResetSenhaController /* * 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 Teladelogin.controller; import Teladelogin.bean.loginbean; import Teladelogin.dao.logindao; import chamartela.GerarTela; import jBDC.Conexao; import java.net.URL; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.control.Alert; import javafx.scene.control.Button; import javafx.scene.control.PasswordField; import javafx.scene.control.TextField; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.AnchorPane; import javafx.stage.Stage; import load.LoadFXML; /** * FXML Controller class * * @author Elyton */ public class ResetSenhaController implements Initializable { Connection conn = null; PreparedStatement pst = null; ResultSet rs = null; Stage dialogStage = new Stage(); Scene scene; @FXML private TextField user; @FXML private PasswordField senha; @FXML private Button salvar; @FXML private Button buscar; @FXML private AnchorPane redimensionar; /** * Initializes the controller class. */ @Override public void initialize(URL url, ResourceBundle rb) { this.carregarImage(); //no buscar ele vai verificar na tabela do banco se existe o tal login e sim você vai e altera a senha this.buscar.setOnAction(event -> { if (buscarLogin()) { loginbean login = new loginbean(); logindao logi = new logindao(); conn = Conexao.getConnection(); String sql = "Select * from usuario where login = ? "; try { pst = (PreparedStatement) conn.prepareStatement(sql); pst.setString(1, user.getText()); rs = pst.executeQuery(); if (!rs.next()) { infobox("Login não encontrado, Verifique e tente Novamente ", null, "Erro"); this.user.setText(""); } else { infobox2("Login Encontrado", null, "Sucesso"); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); } } catch (Exception e) { // JOptionPane.showMessageDialog(null, e); e.printStackTrace(); } } }); //Ação do botao salvar this.salvar.setOnAction(event -> { if (validaCampo()) { loginbean login = new loginbean(); logindao logi = new logindao(); login.setLogin(user.getText()); login.setSenha(senha.getText()); try { logi.Alterar(login); //chama o metodo alterar na classe Logindao infobox2("Senha Alterada com Sucesso", null, "Ok"); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); dialogStage.close(); } catch (Exception ex) { Logger.getLogger(ResetSenhaController.class.getName()).log(Level.SEVERE, null, ex); } } }); } public static URL getFXML() { return ResetSenhaController.class.getResource("/Teladelogin/view/ResetSenha.fxml"); } // metodo infobox pra aparecer a janela personalizada public void infobox(String infoMessage, String headerText, String title) { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setContentText(infoMessage); alert.setTitle(title); alert.setHeaderText(headerText); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png"));//adicionar uma imagem no lugar daquele icone do java quando abre o frame alert.showAndWait(); } // metodo infobox pra aparecer a janela personalizada public void infobox2(String infoMessage, String headerText, String title) { Alert alert = new Alert(Alert.AlertType.INFORMATION); alert.setContentText(infoMessage); alert.setTitle(title); alert.setHeaderText(headerText); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); //adicionar uma imagem no lugar daquele icone do java quando abre o frame alert.showAndWait(); } // metodo validar os campo login e senha caso clique no botao salvar e os tiver vazio os campos login e senha ele vai aparecer mensagem de erro "preencha os campos bla bla " private boolean validaCampo() { String erroMessage = ""; if (user.getText() == null || user.getText().length() == 0) { //varivel user que defini o nome para textfield login erroMessage += "Login inválido\n"; } if (senha.getText() == null || senha.getText().length() == 0) { //varivel senha que defini o nome para PasswordField senha erroMessage += "Senha inválido\n"; } if (erroMessage.length() == 0) { return true; } else { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setTitle("Erro ao Alterar de Senha"); alert.setHeaderText("Campos Vazios, Insira os Dados para Atualizar as Informações "); alert.setContentText(erroMessage); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); return false; } } // metodo validar os campo buscar caso clique no botao buscar e nao tiver o campo login preenchido ele vai aparecer mensagem de erro private boolean buscarLogin() { String erroMessage = ""; if (user.getText() == null || user.getText().length() == 0) { //varivel user que defini o nome para textfield login erroMessage += "Login inválido\n"; } if (erroMessage.length() == 0) { return true; } else { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setTitle("Buscar Login "); alert.setHeaderText("Campo Vazio, Insira o Login para Buscar mais Informações "); alert.setContentText(erroMessage); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); return false; } } } //class LoginDao /* * 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 Teladelogin.dao; import Teladelogin.bean.loginbean; import jBDC.Conexao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author Elyton */ public class logindao { private Connection con = null; private PreparedStatement pst = null; private ResultSet rs = null; //update para alterar a senha public Object Alterar(Object obj) throws Exception { loginbean login = (loginbean) obj; String sql = "update usuario set senha = ? where login = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setString(1, login.getSenha()); pst.setString(2, login.getLogin()); pst.execute(); return login; } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public Object listar() throws Exception { String sql = "Select * from usuario where login = ? "; //vai na tabela usuario no banco de dados e verifica se existe o login na qual o ususario procura para alterar a senha try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { loginbean login = new loginbean(); login.setLogin(rs.getString(1)); return login; } } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(rs); Conexao.fechar(pst); Conexao.fechar(con); } return null; } }
  8. esse !senha.isEmpty() coloca aonde ? sobre validação eu já fiz um método que valida se campo está vazio ou nao utilizei o infobox adicionado 18 minutos depois Agora ele deu uns seguintes erros de exception Executing C:\Users\Elyton\Documents\Projeto igreja\Projeto_Cadastramento_Depart\dist\run1679245453\Projeto_Cadastramento_Depart.jar using platform C:\Program Files\Java\jdk1.8.0_111\jre/bin/java abr 06, 2018 1:28:08 AM Teladelogin.controller.ResetSenhaController lambda$initialize$1 GRAVE: null java.lang.ClassCastException: java.lang.String cannot be cast to Teladelogin.bean.loginbean at Teladelogin.dao.logindao.Alterar(logindao.java:29) at Teladelogin.controller.ResetSenhaController.lambda$initialize$1(ResetSenhaController.java:111) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Node.fireEvent(Node.java:8413) at javafx.scene.control.Button.fire(Button.java:185) at com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:182) at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:96) at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:89) at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Scene$MouseHandler.process(Scene.java:3757) at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3485) at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762) at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2494) at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:380) at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:294) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$354(GlassViewEventHandler.java:416) at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:389) at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:415) at com.sun.glass.ui.View.handleMouseEvent(View.java:555) at com.sun.glass.ui.View.notifyMouse(View.java:937) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) at java.lang.Thread.run(Thread.java:745) Eu cliquei pra saber onde tava dando erro pra saber qual linha tava o problema ele me levou pra classe logindao e ResetSenhaController olha o print
  9. Então o logincontroller ficaria assim ? public void initialize(URL url, ResourceBundle rb) { this.carregarImage(); this.buscar.setOnAction(event -> { if (buscarLogin()) { loginbean login = new loginbean(); logindao logi = new logindao(); conn = Conexao.getConnection(); String sql = "Select * from usuario where login = ? "; try { pst = (PreparedStatement) conn.prepareStatement(sql); pst.setString(1, user.getText()); rs = pst.executeQuery(); if (!rs.next()) { infobox("Login não encontrado, Verifique e tente Novamente ", null, "Erro"); this.user.setText(""); } else { infobox2("Login Encontrado", null, "Sucesso"); //logi.listar(); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); } } catch (Exception e) { // JOptionPane.showMessageDialog(null, e); e.printStackTrace(); } } }); this.salvar.setOnAction(event -> { if (validaCampo()) { loginbean login = new loginbean(); logindao logi = new logindao(); login.setLogin(user.getText()); login.setSenha(senha.getText()); login.setCodigo(Integer.parseInt(codigo.getText())); try { logi.Alterar(login.getSenha()); infobox2("Usuário e Senha Alterado com Sucesso", null, "Ok"); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); dialogStage.close(); } catch (Exception ex) { Logger.getLogger(ResetSenhaController.class.getName()).log(Level.SEVERE, null, ex); } } }); } //classe dao deixei assim depois que coloquei os select e update que você falou /* * 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 Teladelogin.dao; import Teladelogin.bean.loginbean; import jBDC.Conexao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author Elyton */ public class logindao { private Connection con = null; private PreparedStatement pst = null; private ResultSet rs = null; public Object Alterar(Object obj) throws Exception { loginbean login = (loginbean) obj; String sql = "update usuario set senha = ? where login = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setString(1, login.getSenha()); pst.setString(2, login.getLogin()); pst.execute(); return login; } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public Object listar() throws Exception { String sql = "Select * from usuario where login = ? "; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { loginbean login = new loginbean(); login.setLogin(rs.getString(1)); return login; } } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(rs); Conexao.fechar(pst); Conexao.fechar(con); } return null; } }
  10. /* * 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 Teladelogin.dao; import Teladelogin.bean.loginbean; import jBDC.Conexao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author Elyton */ public class logindao { private Connection con = null; private PreparedStatement pst = null; private ResultSet rs = null; public Object Alterar(Object obj) throws Exception { loginbean login = (loginbean) obj; String sql = "update usuario set login = ?,senha = ? where codigo = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setString(1, login.getLogin()); pst.setString(2, login.getSenha()); pst.setInt(3, login.getCodigo()); pst.execute(); return login; } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public Object listar() throws Exception { String sql = "select * from usuario where codigo = ? "; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { loginbean login = new loginbean(); login.setCodigo(rs.getInt(1)); return login; } } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(rs); Conexao.fechar(pst); Conexao.fechar(con); } return null; } } Esse é a minha classe LoginDao adicionado 2 minutos depois @psykotico "Apenas pra entender o motivo, porque você quer que apareça os id do usuário na tela de alteração de senha?? Veja, se isso força alguns processos a mais só pra satisfazer esse caminho." Respondendo sua pergunta se eu nao jogar esse id ali no campo ele alterar login de todos, tipo se tiver 5 usuario no banco ele altera o login e senha dos 5 e fica todos iguais
  11. Estou tentando criando uma função que altere a senha do usuário só que ai tudo bem ele acha o login no banco quando clico em buscar, só que gostaria puxar o id para conseguir mudar a senha de acesso alguém me da uma força ? // resetsenha controller /* * 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 Teladelogin.controller; import Teladelogin.bean.loginbean; import Teladelogin.dao.logindao; import chamartela.GerarTela; import jBDC.Conexao; import java.net.URL; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.control.Alert; import javafx.scene.control.Button; import javafx.scene.control.PasswordField; import javafx.scene.control.TextField; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.AnchorPane; import javafx.stage.Stage; import load.LoadFXML; /** * FXML Controller class * * @author Elyton */ public class ResetSenhaController implements Initializable { Connection conn = null; PreparedStatement pst = null; ResultSet rs = null; Stage dialogStage = new Stage(); Scene scene; @FXML private TextField user; @FXML private PasswordField senha; @FXML private Button salvar; @FXML private Button buscar; @FXML private AnchorPane redimensionar; @FXML private TextField codigo; /** * Initializes the controller class. */ @Override public void initialize(URL url, ResourceBundle rb) { this.carregarImage(); this.buscar.setOnAction(event -> { if (buscarLogin()) { conn = Conexao.getConnection(); String sql = "Select * from usuario where login = ? "; try { pst = (PreparedStatement) conn.prepareStatement(sql); pst.setString(1, user.getText()); rs = pst.executeQuery(); if (!rs.next()) { infobox("Login não encontrado, Verifique e tente Novamente ", null, "Erro"); this.user.setText(""); } else { infobox2("Login Encontrado", null, "Sucesso"); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); } } catch (Exception e) { // JOptionPane.showMessageDialog(null, e); e.printStackTrace(); } } }); this.salvar.setOnAction(event -> { if (validaCampo()) { loginbean login = new loginbean(); logindao logi = new logindao(); login.setLogin(user.getText()); login.setSenha(senha.getText()); try { logi.Alterar(login); infobox2("Usuário e Senha Alterado com Sucesso", null, "Ok"); Node node = (Node) event.getSource(); dialogStage = (Stage) node.getScene().getWindow(); dialogStage.close(); } catch (Exception ex) { Logger.getLogger(ResetSenhaController.class.getName()).log(Level.SEVERE, null, ex); } } }); } public static URL getFXML() { return ResetSenhaController.class.getResource("/Teladelogin/view/ResetSenha.fxml"); } public void infobox(String infoMessage, String headerText, String title) { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setContentText(infoMessage); alert.setTitle(title); alert.setHeaderText(headerText); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); } public void infobox2(String infoMessage, String headerText, String title) { Alert alert = new Alert(Alert.AlertType.INFORMATION); alert.setContentText(infoMessage); alert.setTitle(title); alert.setHeaderText(headerText); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); } private boolean validaCampo() { String erroMessage = ""; if (user.getText() == null || user.getText().length() == 0) { erroMessage += "Login inválido\n"; } if (senha.getText() == null || senha.getText().length() == 0) { erroMessage += "Senha inválido\n"; } if (erroMessage.length() == 0) { return true; } else { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setTitle("Erro ao Alterar de Senha"); alert.setHeaderText("Campos Vazios, Insira os Dados para Atualizar as Informações "); alert.setContentText(erroMessage); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); return false; } } private boolean buscarLogin() { String erroMessage = ""; if (user.getText() == null || user.getText().length() == 0) { erroMessage += "Login inválido\n"; } if (erroMessage.length() == 0) { return true; } else { Alert alert = new Alert(Alert.AlertType.ERROR); alert.setTitle("Buscar Login "); alert.setHeaderText("Campo Vazio, Insira o Login para Buscar mais Informações "); alert.setContentText(erroMessage); Stage stage = (Stage) alert.getDialogPane().getScene().getWindow(); stage.getIcons().add(new Image("/imagem/logo b.png")); alert.showAndWait(); return false; } } private void carregarImage() { this.redimensionar.setStyle( "-fx-background-image:url(/imagem/login.png);" + "-fx-background-repeat:round;" + "-fx-background-size:contain;" + "-fx-background-position:center center;"); } } // classe DAO lOGIN /* * 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 Teladelogin.dao; import Teladelogin.bean.loginbean; import jBDC.Conexao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author Elyton */ public class logindao { private Connection con = null; private PreparedStatement pst = null; private ResultSet rs = null; public Object Alterar(Object obj) throws Exception { loginbean login = (loginbean) obj; String sql = "update usuario set login = ?,senha = ? where codigo = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setString(1, login.getLogin()); pst.setString(2, login.getSenha()); pst.setInt(3, login.getCodigo()); pst.execute(); return login; } catch (SQLException ex) { Logger.getLogger(logindao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } }
  12. Como tirar esse campo vazio depois de data de nascimento isso aparece quando maximizo a janela no scene builder alguém sabe como tira-lo ? Meu programa é baseado no java fx
  13. To na duvida como eu salvo data e hora que usuario informar que seja salvo no banco de dados ? Estou usando java fx // Classe controller agendamento /* * 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 Agendamento.controller; import Agendamento.bean.Agendamento; import Cliente.bean.Cliente; import Cliente.dao.ClienteDao; import TelaChamar.GerarTela; import java.io.IOException; import java.net.URL; import java.sql.Time; import java.text.SimpleDateFormat; import java.util.Date; import java.util.ResourceBundle; import java.util.Vector; import java.util.logging.Level; import java.util.logging.Logger; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.Parent; import javafx.scene.control.Button; import javafx.scene.control.ComboBox; import javafx.scene.control.DatePicker; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.stage.Stage; /** * FXML Controller class * * @author Elyton */ public class FXML_Agendamento2Controller implements Initializable { @FXML private Label labelcodigo; @FXML private ComboBox<Cliente> combocliente; @FXML private TextField txthora; @FXML private Button botaosalvar; @FXML private Button botaovoltar; @FXML private DatePicker dataagen; // private final String FORMATO_DATA = "dd/MM/yyyy"; // private final SimpleDateFormat FORMATADOR = new SimpleDateFormat(FORMATO_DATA); /** * Initializes the controller class. */ public void convertendo() { // SimpleDateFormat sdfsource = new SimpleDateFormat("dd/MM/yy"); // Date parse = sdfsource.parse(strdate); // SimpleDateFormat sdfdest = new SimpleDateFormat("dd-MM-yyyy"); // String date = sdfdest.format(parse); } @Override public void initialize(URL url, ResourceBundle rb) { try { ObservableList<Cliente> clientes = FXCollections.observableArrayList(new ClienteDao().listar()); combocliente.setItems(clientes); } catch (Exception ex) { Logger.getLogger(FXML_Agendamento2Controller.class.getName()).log(Level.SEVERE, null, ex); } this.iniciarEvento(); } public void iniciarEvento() { botaosalvar.setOnAction(event -> { Agendamento agen = new Agendamento(); agen.propertynome().set(this.combocliente.getSelectionModel().getSelectedItem().getNome()); // agen.propertydata().set(this.dataagen.getValue()); Aqui salvaria data // agen.propertyhora().set(this.txthora.getStyle().get); aqui a hora digitando no texfield }); botaovoltar.setOnAction(event -> { Stage stage = new Stage(); Parent root = null; try { root = FXMLLoader.load(getClass().getResource("/Menuprincipal/view/FXML_MenuPrincipal.fxml")); } catch (IOException ex) { Logger.getLogger(FXML_Agendamento2Controller.class.getName()).log(Level.SEVERE, null, ex); } botaovoltar.getScene().getWindow().hide(); }); } public static URL getFXML() { return FXML_Agendamento2Controller.class.getResource("/Agendamento/view/FXML_Agendamento2.fxml"); } } // classe AgendamentoDao /* * 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 Agendamento.dao; import Agendamento.bean.Agendamento; import jBDC.Conexao; import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Time; import java.util.logging.Level; import java.util.logging.Logger; import javafx.collections.FXCollections; import javafx.collections.ObservableList; /** * * @author Elyton */ public class AgendamentoDao { public Connection getCon() { return con; } public void setCon(Connection con) { this.con = con; } private Connection con = null; private PreparedStatement pst = null; private ResultSet rs = null; public Object inserir(Object obj) throws Exception { Agendamento agen = (Agendamento) obj; String sql = "insert into agendamento (nome,data,hora) values (?,?,?)"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setString(1, agen.getNome()); pst.setDate(2, Date.valueOf(agen.getdata())); pst.setTime(3, Time.valueOf(agen.gethora())); // pst.setTime(2, ); pst.execute(); return agen; } catch (SQLException ex) { Logger.getLogger(AgendamentoDao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public Boolean excluir(Integer codigo) { String sql = "delete from agendamento where codigo = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); pst.setInt(1, codigo); pst.execute(); return true; } catch (SQLException ex) { Logger.getLogger(AgendamentoDao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public Object Alterar(Object obj) throws Exception { Agendamento agen = (Agendamento) obj; String sql = "update agendamento set nome = ? where codigo = ?"; try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); // pst.setString(1, clien.getNome()); // pst.setString(2, clien.getEndereco()); // pst.setString(3, clien.getTelefone()); // pst.setString(4, clien.getRG()); // pst.setString(5, clien.getCPF()); // pst.setInt(6, clien.getCodigo()); pst.execute(); return agen; } catch (SQLException ex) { Logger.getLogger(AgendamentoDao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(pst); Conexao.fechar(con); } return null; } public ObservableList<Agendamento> listar() throws Exception { String sql = "select *from cliente"; ObservableList<Agendamento> retorno = FXCollections.observableArrayList(); try { con = Conexao.getConnection(); pst = con.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { Agendamento agen = new Agendamento(); agen.setCodigo(rs.getInt(1)); agen.setNome(rs.getString(2)); retorno.add(agen); } return retorno; } catch (SQLException ex) { Logger.getLogger(AgendamentoDao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(rs); Conexao.fechar(pst); Conexao.fechar(con); } return null; } }
  14. Fala pessoal to na duvida como eu pego todos os clientes do banco de dados e jogo no combo box ? Sistema que estou desenvolvendo é de agendamento de cliente. por enquanto só tenho o dao alguém pode me ajudar com o resto com exemplo ou algo do tipo ? obs: Estou usando java fx no projeto //cliente dao para buscar nome public void buscarcliente(){ try { String sql = "select nome from cliente"; con = Conexao.getConnection(); pst = con.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { // aqui eu colocaria atributos combobox } return retorno; } catch (SQLException ex) { Logger.getLogger(ClienteDao.class.getName()).log(Level.SEVERE, null, ex); } finally { Conexao.fechar(rs); Conexao.fechar(pst); Conexao.fechar(con); } return null; }

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

×