Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Motta

    Select com group by

    SELECT txModelo, count(equipamento.idModelo) AS TOTAL, CASE WHEN situacao='EM ESTOQUE' then count(situacao) else 0 end AS 'ESTOQUE', CASE WHEN situacao='EM PRODUÇÃO' then count(situacao) else 0 end AS 'PRODUÇÃO' FROM modelo LEFT JOIN equipamento ON modelo.idModelo = equipamento.idModelo GROUP BY txModelo
  3. Anderson Campos da Silva

    Select com group by

    Opa, obrigado pela ajuda, porém, as linhas ficaram duplicadas: QUERY: SELECT txModelo, count(equipamento.idModelo) AS TOTAL, CASE WHEN situacao='EM ESTOQUE' then count(situacao) else 0 end AS 'ESTOQUE', CASE WHEN situacao='EM PRODUÇÃO' then count(situacao) else 0 end AS 'PRODUÇÃO' FROM modelo LEFT JOIN equipamento ON modelo.idModelo = equipamento.idModelo GROUP BY descModelo, situacao Retornou assim: txModelo | total | produção | estoque CISCO 4 4 0 CISCO 3 0 3 HP 10 10 0 HP 5 0 5 DELL 2 2 0 DELL 8 0 8
  4. Massaki

    Como colocar o resultado do Select em uma variavel?

    Dentro de cada laço você está redefinindo a variável $conteudo_meio, sendo que quando ele sempre vai ficar no final com o último registro. Gere uma array no lugar de variável. $conteudo_meio[] = { }; Depois, para resgatar os valores da array: foreach ($conteudo_meio as $registro) { echo $registro; } Agora, se você quer armazenar tudo dentro de uma só variável, primeiro defina ela sem nada: $conteudo_meio = ''; Depois, dentro do seu FOREACH adicione o conteúdo concatenando. $conteudo_meio .= { }; Se for colocar uma linha no final de cada registro, coloque ."\n" depois de .complementoRegistro(1,"brancos")
  5. Today
  6. Tenho um select em PDO e preciso que a consulta retornada vire uma variavel, mas a variavel só pega a ultima linha da tabela e eu preciso que pegue todas as linhas que existirem. $conexao = conexao::getInstance(); $sql = 'SELECT * FROM RegistroE'; $stm = $conexao->prepare($sql); $stm->execute(); $Sql = $stm->fetchAll(PDO::FETCH_OBJ); foreach ($Sql as $SqlReg): $conteudo_meio = picture_X($SqlReg->E_01,1) .picture_X($SqlReg->E_02,25) .picture_9($SqlReg->E_03,4) .picture_X($SqlReg->E_04,14) .picture_9($SqlReg->E_05,8) .picture_9($SqlReg->E_06,8) .picture_9($SqlReg->E_07,8) .picture_9($SqlReg->E_08,8) .picture_9($SqlReg->E_09,8) .complementoRegistro(96,"brancos") .picture_9($SqlReg->E_11,1) .complementoRegistro(1,"brancos") ; endforeach; Como eu poderia está fazendo isto?
  7. peterstefan

    LOAD NÃO PARA DE CARREGAR

    Bom dia, Massaki creio que devo tratar o retorno, mais ele me retorna um string e esse mesmo js que faz o load esta no login, recover e troca de senha.. nesses funciona certinho...
  8. Massaki

    LOAD NÃO PARA DE CARREGAR

    Você está conseguindo cadastrar sem utilizar o CURL? O problema pode ser no Webservice.
  9. Massaki

    PHPMailer

    Primeiro feche as aspas e ponha um ponto-e-vírgula antes disto (quando inicia o TBODY). Depois, dentro do WHILE, ao invés de "echoar" o conteúdo das novas linhas, concatene com ponto. $mensagem .= '<tr>'; $mensagem .= '<td>' . $linhas['NroCupom'] . '</td>'; E assim por diante. Por fim, feche a tabela. $mensagem .= '</tbody></table>';
  10. Samuel Pietro

    Select só exibe a ultima linha da tabela

    Bem alguns avanços que consegui: Eu subtitui a variavel $conteudo_meio por print e a consulta foi retornada com todos os regstros, mas eu me esbarrei em outro problema. Mais a frente no codigo eu preciso ler o conteudo que está no print, até tentei print onde eu preciso mas ai volta a exibir apenas a ultima linha. E não minha pergunta é: Se isso for logicamente possivel, como eu coloco o conteudo do print dentro de uma variavel? ACABEI DE VERIFICAR QUE ASSIM NÃO RESOLVE PRA MIM, POIS A FUNCTION function picture_x NÃO FUNCIONARA COMO ESPERADO, ELA CRIA ESPAÇOS EM BRANCOS NECESSARIOS PARA O PADRÃO DE 150 POSIÇÕES E print IRÁ OS SUPRIMIR MANTENDO APENAS UM UNICO ESPAÇO
  11. Motta

    Select com group by

    Veja se isto ajuda , talvez se precise de um join.
  12. Anderson Campos da Silva

    Select com group by

    Olá, Estou com um problema, que para alguns pode ser simples, é o seguinte: Tenho 2 tabela relacionadas, MODELO e EQUIPAMENTO TABELA MODELO idModelo (INT) - chave primária txModelo (VARCHAR) TABELA EQUIPAMENTO idEquipamento (INT) - chave primária patrimonio (VARCHAR) situacao (VARCHAR) idModelo (INT) - Chave estrangeira O campo situação pode ser preenchido apenas apenas com PRODUÇÃO OU ESTOQUE. Enfim, preciso de um SELECT que retorne as seguintes colunas txModelo, quantidade de equipamentos por modelo, quantidade de equipamentos com PRODUÇÃO, e quantidade de equipamentos com ESTOQUE, exemplo: txModelo | total | produção | estoque CISCO 7 4 3 HP 15 10 5 DELL 10 2 8 Desde já agradeço
  13. winterjeferson

    CSS - Como isolar a estilização de um link?!

    substitua esta parte: a:hover{ color: black; background-color: white; } por: .haus a:hover{ color: black; background-color: white; }
  14. winterjeferson

    Carrinho de compras ajax

    Não sei se entendi, mas tenta o ajax no click do botão: $.ajax({ url:"arquivo.php", success:function(data) { $('#div').html(data); } });
  15. peterstefan

    LOAD NÃO PARA DE CARREGAR

    Bom dia, estou fazendo uma cadastro via rest e estou utilizando o curl para cadastrar no webservice... Meu código está cadastrando tudo certinho, porem quando ele cadastra e mostra o retorno que foi cadastrado com sucesso ele fica o AGUARDE, CARREGANDO e não para.. não sei oque esta faltando pq já tentei varias coisas e não deu certo... $Data = [ "nomeRazaoSocial" => $PostData['nomeRazaoSocial'], "identMF" => $PostData['identMF'], "email" => $PostData['email'], "telefone" => $PostData['telefone'], "senhaProvisoria" => $PostData['senhaProvisoria'] ]; $DataString = json_encode($Data); $curl = curl_init(WEBSERVICECADASTRO); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POSTFIELDS, $DataString); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($DataString)) ); $result = curl_exec($curl); if ($result) { $jSON['success'] = "<i class='icon-checkmark'></i>Pronto, cadastro foi realizado com sucesso!"; }else{ $jSON['error'] = "<i class='icon-warning'></i>Oops! Erro ao cadastrar! Por favor, tente novamente!"; }
  16. BOLÃO IMASTERS LIGA DOS CAMPEÕES 2018-2019 - 10ª RODADA -------------------------------------------------------------------------------------- RESULTADOS FINAIS JOGO 01: PORTO-POR 1 x 4 LIVERPOOL-ING JOGO 02: MANCHESTER CITY-ING 4 x 3 TOTTENHAM-ING JOGO 03: JUVENTUS-ITA 1 x 2 AJAX-HOL JOGO 04: BARCELONA-ESP 3 x 0 MANCHESTER UNITED-ING Veja todos os palpites - LIGA DOS CAMPEÕES 2018-2019 - 10ª RODADA -------------------------------------------------------------------------------------- 2 acertos quintelab 02 MANCHESTER CITY-ING 04 BARCELONA-ESP Algalord 02 MANCHESTER CITY-ING 04 BARCELONA-ESP -------------------------------------------------------------------------------------- 1 acerto Motta 01 LIVERPOOL-ING
  17. calves_oliveira

    Manipular Jtable

    Olá pessoal, sou iniciante e antes de postar aqui meu pedido de ajuda estou a uns dias pesquisando como sanar minhas duvidas mas sem sucesso. bom vamos, lá… Em um form tenho um campo jtextField, jtable e botões novo, inserir, atualizar, excluir e atualizar. manipular a tabela do banco de dados está tudo ok , carregar a jtable tbm! porem não estou conseguindo atualizar o jtable, ao excluir, editar sem ter que ficar buscando do BD o tempo todo até mesmo que não faz sentido isso. (vários lugares ensinam desta maneira). segue as classes: package Model.Table; import java.util.ArrayList; import javax.swing.table.AbstractTableModel; /** * * @author Usuario */ public abstract class TableModelPadrao extends AbstractTableModel { protected String[] colunas; protected ArrayList linhas; protected boolean[] colEditavel; public TableModelPadrao(ArrayList linhas) { setColunas(criarColunas()); setColEditavel(colEditavel); this.linhas = linhas; } protected abstract String[] criarColunas(); protected abstract boolean[] colEditavel(); @Override public int getRowCount() { if (linhas != null) { return linhas.size(); } else { return 0; } } @Override public int getColumnCount() { return colunas.length; } @Override public boolean isCellEditable(int row, int col) { return false; } @Override public Class getColumnClass(int c) { return getValueAt(0, c).getClass(); } @Override public String getColumnName(int col) { return colunas[col]; } //Getter e Setter public String[] getColunas() { return colunas; } public final void setColunas(String[] colunas) { this.colunas = colunas; } public ArrayList getLinhas() { return linhas; } public void setLinhas(ArrayList linhas) { this.linhas = linhas; fireTableDataChanged(); } public boolean[] getColEditavel() { return colEditavel; } public void setColEditavel(boolean[] colEditavel) { this.colEditavel = colEditavel; } public abstract void addRow(Object o); public abstract void removeRow(int linha); @Override public abstract void setValueAt(Object o, int linha, int coluna); } package Model.Table; import Model.ArroladoPor; import java.util.ArrayList; /** * * @author Usuario */ public class TableArroladoPor extends TableModelPadrao { public TableArroladoPor(ArrayList linhas) { super(linhas); } @Override public Object getValueAt(int rowIndex, int columnIndex) { ArroladoPor a = (ArroladoPor) linhas.get(rowIndex); switch (columnIndex) { case 0: return a.getIdArrolado(); case 1: return a.getDescricao(); default: throw new IndexOutOfBoundsException("Numero de colunas no TableArroladoPor" + " não é compativel com dados do banco"); } } @Override protected String[] criarColunas() { return new String[]{"Id", "Descricão"}; } @Override protected boolean[] colEditavel() { return new boolean[]{false, false}; } @Override public void addRow(Object o) { this.linhas.add(o); this.fireTableDataChanged(); } @Override public void removeRow(int linha) { this.linhas.remove(linha); this.fireTableRowsDeleted(linha, linha); } @Override public void setValueAt(Object obj, int linha, int coluna) { ArroladoPor a = (ArroladoPor) linhas.get(linha); //verifica qual valor vai ser alterado switch (coluna) { // case 0: // Primeira coluna é o codigo. // a.setIdArrolado(Integer.parseInt((String) obj)); // break; case 1: // Segunda coluna é o descricao. a.setDescricao(obj.toString()); break; } //avisa que os dados mudaram this.fireTableCellUpdated(linha, coluna); } } package Controller.Helper; import Model.ArroladoPor; import Dao.ArroladoPorDao; import Model.Table.TableArroladoPor; import View.Forms.FrmArroladoPor; import java.awt.Color; import java.sql.SQLException; import java.util.ArrayList; import javax.swing.JOptionPane; import javax.swing.JTable; import javax.swing.ListSelectionModel; import javax.swing.RowFilter; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; import javax.swing.table.TableModel; import javax.swing.table.TableRowSorter; /** * * @author Usuario */ public class ArroladoPorHelper { private FrmArroladoPor view; private TableArroladoPor modeloTabela; private HelperForHall helperForHall; private ArroladoPorDao dao; private ArroladoPor objClasse; public ArroladoPorHelper(FrmArroladoPor view) throws SQLException { this.dao = new ArroladoPorDao(); this.view = view; this.helperForHall = new HelperForHall(); } public ArroladoPorHelper() { } public ArroladoPor getModeloArroladoPor() { String descricao = view.getTxtDescricao().getText().toUpperCase().trim(); int id = Integer.parseInt((view.getTabela().getValueAt(view.getTabela().getSelectedRow(), 0)).toString()); objClasse = new ArroladoPor(id, descricao); return objClasse; } public ArroladoPor getModeloInserir() { String descricao = view.getTxtDescricao().getText().toUpperCase().trim(); objClasse = new ArroladoPor(descricao); return objClasse; } public void inserir() throws SQLException { if (view.getTxtDescricao().getText().trim().equalsIgnoreCase("")) { JOptionPane.showMessageDialog(null, "O campo descrição não pode ficar vazio!", "Validação ", JOptionPane.ERROR_MESSAGE); view.getTxtDescricao().setBackground(Color.LIGHT_GRAY); } else { if (dao.VerificacaoSalvar(getModeloInserir()) != true) { dao.salvar(getModeloInserir());//SALVA NO BANCO modeloTabela.addRow(objClasse);//INSERI OBJ NA TABELA modeloTabela.fireTableDataChanged(); javax.swing.JOptionPane.showMessageDialog(null, "Novo registro armazenado com sucesso!", "Cadastro", JOptionPane.INFORMATION_MESSAGE); } else { javax.swing.JOptionPane.showMessageDialog(null, "Não foi possivel salvar, registro já existente!", "Verificação ao Salvar ", JOptionPane.ERROR_MESSAGE); } } } public void atualizar() throws SQLException { if (view.getTabela().getSelectedRow() != -1) { if (dao.verificaAlterar(getModeloArroladoPor()) == true) { JOptionPane.showMessageDialog(null, "Não foi possivel editar, registro já existente!", "Verificação ao Editar", JOptionPane.ERROR_MESSAGE); } else { dao.alterar(getModeloArroladoPor()); //ATUALIZA NO BANCO helperForHall.fieldClean(view.getPnlPesquisarPor()); //ATUALIZA A TABELA modeloTabela.setValueAt(getModeloArroladoPor(), view.getTabela().getSelectedRow(), 0); modeloTabela.setValueAt(getModeloArroladoPor(), view.getTabela().getSelectedRow(), 1); // modeloTabela.fireTableDataChanged(); JOptionPane.showMessageDialog(null, "Alteracão realizado com sucesso!", "Alteração", JOptionPane.INFORMATION_MESSAGE); } } } public void excluir() throws SQLException { String simNao[] = {"Sim", "Nao"}; int exclui = JOptionPane.showOptionDialog(null, "Confirma exclusão?", "Excluindo...", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, simNao, simNao[1]); if (exclui == 0) { if (view.getTabela().getSelectedRow() != -1) { if (dao.verificaExcluir(getModeloArroladoPor()) != true) { //NÃO EXISTE EM OUTRA TABELA PODE EXCLUIR dao.excluir(getModeloArroladoPor()); modeloTabela.removeRow(view.getTabela().getSelectedRow()); JOptionPane.showMessageDialog(null, "Exclusão realizado com sucesso!", "Exclusão", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(null, "Registro existente em outra tabela!", "Verificação ", javax.swing.JOptionPane.ERROR_MESSAGE); } } } } public void carregaTabela() throws SQLException { ArrayList lista = (ArrayList) dao.selectAll(); modeloTabela = new TableArroladoPor(lista); configuraTabela(modeloTabela); } private void configuraTabela(TableArroladoPor model) { view.getTabela().setSelectionMode(ListSelectionModel.SINGLE_SELECTION); ListSelectionModel lsm = view.getTabela().getSelectionModel(); lsm.addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { if (!e.getValueIsAdjusting()) { selecionarLinha(view.getTabela()); } } }); TableRowSorter<TableModel> sorter = new TableRowSorter<>(modeloTabela); view.getTabela().setRowSorter(sorter); view.getTabela().setModel(model); view.getTabela().getTableHeader().setReorderingAllowed(false); view.getTabela().getColumnModel().getColumn(0).setMinWidth(0); view.getTabela().getColumnModel().getColumn(0).setMaxWidth(0); } public void filtrarTabela() { TableRowSorter<TableModel> sorter = new TableRowSorter<>(modeloTabela); view.getTabela().setRowSorter(sorter); String text = view.getTxtPesquisar().getText().toUpperCase(); if (text.length() == 0) { sorter.setRowFilter(null); } else { sorter.setRowFilter(RowFilter.regexFilter(text)); } } public void selecionarLinha(JTable tabela) { if (tabela.getSelectedRow() != -1) { int lin = view.getTabela().getSelectedRow(); String descricao = (view.getTabela().getValueAt(lin, 1).toString().trim()); view.getTxtDescricao().setText(descricao); setarEstadoComponentes(3); } else { view.getTxtDescricao().setText(""); } } public void setarEstadoComponentes(int estado) { switch (estado) { //inicializa o formulario //Ao clicar excluir case 1: view.getTxtPesquisar().grabFocus(); view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(false); view.getTxtDescricao().setEnabled(false); view.getBtnNovo().setEnabled(true); view.getBtnSalvar().setEnabled(false); view.getBtnEditar().setEnabled(false); view.getBtnExcluir().setEnabled(false); view.getBtnSelecionar().setEnabled(false); break; //ao filtrar case 2: view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(true); view.getTxtDescricao().setEnabled(false); view.getBtnNovo().setEnabled(true); view.getBtnSalvar().setEnabled(false); view.getBtnEditar().setEnabled(false); view.getBtnExcluir().setEnabled(false); view.getBtnSelecionar().setEnabled(false); break; //Ao selecionar linha tabela case 3: view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(true); view.getTxtDescricao().setEnabled(false); view.getBtnNovo().setEnabled(false); view.getBtnSalvar().setEnabled(false); view.getBtnEditar().setEnabled(true); view.getBtnExcluir().setEnabled(true); view.getBtnSelecionar().setEnabled(false); break; //Ao clicar botão novo case 4: view.getTxtDescricao().grabFocus(); view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(false); view.getTxtDescricao().setEnabled(true); view.getBtnNovo().setEnabled(false); view.getBtnSalvar().setEnabled(true); view.getBtnEditar().setEnabled(false); view.getBtnExcluir().setEnabled(false); view.getBtnSelecionar().setEnabled(false); break; //Ao apertar Salvar case 5: view.getTxtDescricao().grabFocus(); view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(false); view.getTxtDescricao().setEnabled(true); view.getBtnNovo().setEnabled(false); view.getBtnSalvar().setEnabled(true); view.getBtnEditar().setEnabled(false); view.getBtnExcluir().setEnabled(false); view.getBtnSelecionar().setEnabled(false); break; //Ao apertar Editar case 6: view.getTxtDescricao().grabFocus(); view.getTxtPesquisar().setEnabled(true); view.getTabela().setEnabled(true); view.getTxtDescricao().setEnabled(true); view.getBtnNovo().setEnabled(false); view.getBtnSalvar().setEnabled(true); view.getBtnEditar().setEnabled(false); view.getBtnExcluir().setEnabled(false); view.getBtnSelecionar().setEnabled(false); break; default: break; } } }
  18. Yesterday
  19. Não entendi a lógica da saída. Alinha pela data mais próxima ?
  20. ola amigos! como abrir um pdf em delphi copiar o texto desse pdf e colar em um memo grato, Adriano Fonseca
  21. RSN

    PHPMailer

    Boa Noite, Preciso enviar uma consulta sql no corpo do e-mail, porém não estou conseguindo concatenar o laço while. <?php include_once('conexao.php'); require 'PHPMailer/PHPMailerAutoload.php'; $resultado = mysql_query("SELECT * FROM cupom WHERE FlagEstorno = 1;"); $linhas = mysql_num_rows($resultado); $mensagem = '<div class="x_content"> <table id="datatable-buttons" class="table table-striped table-bordered"> <thead> <tr> <th>Loja</th> <th>Nro Cupom</th> <th>Data</th> <th>Operador</th> </tr> </thead> <tbody> while($linhas = mysql_fetch_array( $resultado)){ echo " <tr>"; echo "<td>".$linhas['nroloja']."</td>"; echo "<td>".$linhas['NroCupom']."</td>"; echo "<td>".$linhas['DataProc']."</td>"; echo "<td>".$linhas['Operador']."</td>"; echo " </tr>"; }'; $mail = new PHPMailer(); $mail->isSMTP(); $mail->Host = 'smtp.gmail.com'; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->Username = ''; $mail->Password = ''; $mail->Port = 587; $mail->setFrom(''); $mail->addReplyTo(''); $mail->addAddress('', 'Nome'); $mail->isHTML(true); $mail->Subject = 'Assunto do email'; $mail->Body = $mensagem; $mail->AltBody = 'Para visualizar essa mensagem acesse http://site.com.br/mail'; //$mail->addAttachment('/tmp/image.jpg', 'nome.jpg'); if(!$mail->send()) { echo 'Não foi possível enviar a mensagem.<br>'; echo 'Erro: ' . $mail->ErrorInfo; } else { echo 'Mensagem enviada.'; } ?>
  22. Fernando C

    Parse error: syntax error, unexpected '$' (T_VARIABLE)

    oi.. se ainda não resolveu, tente fechar essas linhas com ponto e virgula
  23. Rodrigo F

    ajuda com php

    @Will Fernando acha que me podia passar o codigo é porque eu fui espreitar os links que me deu mas isso só conseguiu responder a metade da minha pergunta que foi como se criava as pastas em php etcc , mas a minha questão era os usuarios registavam se na base de dados e com o user que meteram aquilo tinha logo criado um subdominio e uma pasta se me puder disponibilizar o codigo agradecia atenciosamente Rodrigo Ferreira
  24. Motta

    Função PL/SQL com erro

    A subselect que está no CASE ( ADDT_DISC_1) deve estar retornando mais de uma linha. A solução passa por saber se este retorno está correto pois pode ser um erro na base de dados , duplicidade etc. Não sendo um problema de base , pode haver mais de um dado , precisa definir qual seria o correto e corrigir a sql.
  25. Rodrigo F

    ajuda com php

    @Will Fernando acha que me podia passar o codigo é porque eu fui espreitar os links que me deu mas isso só conseguiu responder a metade da minha pergunta que foi como se criava as pastas em php etcc , mas a minha questão era os usuarios registavam se na base de dados e com o user que meteram aquilo tinha logo criado um subdominio e uma pasta se me puder disponibilizar o codigo agradecia atenciosamente Rodrigo Ferreira
  26. Samuel Pietro

    Select só exibe a ultima linha da tabela

    Estou desenvolvendo um sistema para gerar arquivos de remessa para a CEF (Seguindo o padrão CNAB150) Até então tudo Okay. Meu problema está na hora de gerar a remessa que só consta a ultima linha da respectiva tabela no Banco de dados. Eu preciso que gere com todas as linhas que estiverem na tabela (Mais pra frente irei colocar alguns filtros para gerar por data ou por Numero de Serie) Minha conexão com o Banco está assim: <?php define('SGBD', 'mysql'); define('HOST', 'localhost'); define('DBNAME', '******'); define('CHARSET', 'utf8'); define('USER', '*******'); define('PASSWORD', '******'); define('SERVER', 'linux'); class conexao { /* * Atributo estático de conexão */ private static $pdo; /* * Escondendo o construtor da classe */ private function __construct() { // } /* * Método privado para verificar se a extensão PDO do banco de dados escolhido * está habilitada */ private static function verificaExtensao() { switch(SGBD): case 'mysql': $extensao = 'pdo_mysql'; break; case 'mssql':{ if(SERVER == 'linux'): $extensao = 'pdo_dblib'; else: $extensao = 'pdo_sqlsrv'; endif; break; } case 'postgre': $extensao = 'pdo_pgsql'; break; endswitch; if(!extension_loaded($extensao)): echo "<h1>Extensão {$extensao} não habilitada!</h1>"; exit(); endif; } /* * Método estático para retornar uma conexão válida * Verifica se já existe uma instância da conexão, caso não, configura uma nova conexão */ public static function getInstance() { self::verificaExtensao(); if (!isset(self::$pdo)) { try { $opcoes = array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'); switch (SGBD) : case 'mysql': self::$pdo = new \PDO("mysql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; case 'mssql':{ if(SERVER == 'linux'): self::$pdo = new \PDO("dblib:host=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); else: self::$pdo = new \PDO("sqlsrv:server=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $opcoes); endif; break; } case 'postgre': self::$pdo = new \PDO("pgsql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $opcoes); break; endswitch; self::$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { print "Erro: " . $e->getMessage(); } } return self::$pdo; } public static function isConectado(){ if(self::$pdo): return true; else: return false; endif; } } Minhas Functions <?php /*Campos Numéricos (“Picture 9”) • Alinhamento: sempre à direita, preenchido com zeros à esquerda, sem máscara de edição; • Não utilizados: preencher com zeros. */ function picture_9($palavra,$limite){ $var=str_pad($palavra, $limite, "0", STR_PAD_LEFT); return $var; } /* Campos Alfanuméricos (“Picture X”) • Alinhamento: sempre à esquerda, preenchido com brancos à direita; • Não utilizados: preencher com brancos; • Caracteres: maiúsculos, sem acentuação, sem ‘ç’, sem caracteres especiais. */ function picture_x( $palavra, $limite ){ $var = str_pad( $palavra, $limite, " ", STR_PAD_RIGHT ); $var = remover_acentos( $var ); if( strlen( $palavra ) >= $limite ){ $var = substr( $palavra, 0, $limite ); } $var = strtoupper( $var );// converte em letra maiuscula return $var; } function sequencial($i) { if($i < 10) { return zeros(0,5).$i; } else if($i > 10 && $i < 100) { return zeros(0,4).$i; } else if($i > 100 && $i < 1000) { return zeros(0,3).$i; } else if($i > 1000 && $i < 10000) { return zeros(0,2).$i; } else if($i > 10000 && $i < 100000) { return zeros(0,1).$i; } } function zeros($min,$max) { $x = ($max - strlen($min)); for($i = 0; $i < $x; $i++) { $zeros .= '0'; } return $zeros.$min; } function complementoRegistro($int,$tipo) { if($tipo == "zeros") { $space = ''; for($i = 1; $i <= $int; $i++) { $space .= '0'; } } else if($tipo == "brancos") { $space = ''; for($i = 1; $i <= $int; $i++) { $space .= ' '; } } return $space; } ?> E Finalmente o meu Select $conexao = conexao::getInstance(); $sql = 'SELECT * FROM RegistroE'; $stm = $conexao->prepare($sql); $stm->execute(); $Sql = $stm->fetchAll(PDO::FETCH_ASSOC);//Já tentei usar tmb $Sql = $stm->fetchAll(PDO::FETCH_OBJ); MAS O PROBLEMA PERSISTE foreach($Sql as $SqlReg): $conteudo_meio= picture_X($SqlReg->E_01,1) .picture_X($SqlReg->E_02,25) .picture_9($SqlReg->E_03,4) .picture_X($SqlReg->E_04,14) .picture_9($SqlReg->E_05,8) .picture_9($SqlReg->E_06,8) .picture_9($SqlReg->E_07,8) .picture_9($SqlReg->E_08,8) .picture_9($SqlReg->E_09,8) .complementoRegistro(96,"brancos") .picture_9($SqlReg->E_11,1) .complementoRegistro(1,"brancos") ; endforeach; Eu preciso da ajuda para listar todos os registros e não apenas o ultimo.
  27. Boa tarde, Preciso restaurar a estrutura de um banco de dados (tabelas,views,procedures.. etc) em outro banco de dados que esta vazio (nao tem tabela nenhuma, banco novo), utilizo o sql server. Consigo fazer utilizando o SSMS ? Para entender melhor estou enviando uma imagem. O banco com todas tabelas,viwes,procedures, registros, etc.. é o Guara_ que esta no servidor .\SQLEXPRESS quero fazer uma copia identica dele no banco Nutri no servidor sdb.hsi. Desde ja agradeço.
  28. Funcionou Obrigado
  1. Load more activity
×

Important Information

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