Ir para conteúdo
Fórum Script Brasil

Hugão

Membros
  • Total de itens

    25
  • Registro em

  • Última visita

Sobre Hugão

Contatos

  • MSN
    goj1@hotmail.com

Perfil

  • Gender
    Male
  • Location
    Brasília DF

Hugão's Achievements

0

Reputação

  1. Hugão

    Dúvida PL/SQL

    Bom dia, Eu só gostaria de saber porque o while abaixo só itera a data_vencimento uma vez, eu usei a data 10-11-2012, sendo assim, enquanto a data do pagamento for maior que o vencimento final de semana ou feriado ele deveria iterar a até a condição ser falsa, mas ele não está verificando os valores do final de semana e do feriado. Alguém poderia me dar uma força? Eu nunca programei em PL/SQL o professor não explica nada apenas deu ordem para estudarmos (ou seja, ou você se vira ou não passa na matéria), aprendi muito em 3 semanas, mas não foi suficiente para fazer a função funcionar.
  2. Estou há duas semanas tentando criar uma função PL/SQL para verificar se um boleto foi pago em dia ou não e caso o vencimento caia num feriado ou final de semana o vencimento passa para o próximo dia útil, caso tenha sido pago após a data de vencimento. O problema é basicamente o descrito Criei duas tabelas BOLETO e CALENDARIO (foi utilizado o mês de novembro em razão dos feriados) Já povoei as duas entidades. Minha dificuldade é, no oracle não existe o tipo boolean, portanto não tive como eu definir os feriados e os finais de semana como TRUE, eles estão como number com valor 1 para sim e 0 para não, ou seja, 1 é feriado ou final de semana e 0 não é feriado nem final de semana. Aqui está a função:
  3. rs Cara eu vi esse absurdo! Desculpe, alterei e deu certo! :blush:
  4. Tudo na paz? Amigo, Eu alterei o código para deixar mais limpo e identifiquei que ele não estava excluindo do banco porque estava pegando o idmural 0 e não o idmural selecionado no form select. A mensagem é: "Mural id 0 deletado com sucesso!". Agora o problema é saber por que ele não pega a opção selecionada no option do select. Veja como ficou o código (vou postar só as partes pertinenetes): <?php $combo = (isset($_POST['idmural']) ? $_POST['idmural'] : 0); $deleta = mysql_query("DELETE FROM mural WHERE idmural = $combo"); if ($deleta) { echo "Mural id $combo deletado com sucesso!"; } else { echo "Erro ao deletar!" . mysql_error(); } ?> <div id="painel"> <?php $sql = "SELECT idmural, titulo FROM mural ORDER BY data DESC, idmural DESC"; $resultado = mysql_query($sql) or die(mysql_error()); if (@mysql_num_rows($resultado) == 0) { echo "Nenhum registro encontrado!"; } ?> <form id="form2" name="form2" method="post" action="" enctype="mulpart/form-data"> <table align="center"> <tr> <td><select name="idmual"> <option>Selecione o mural para exclusão.</option> <?php while ($linha = mysql_fetch_array($resultado)) { $idmural = $linha[0]; $titulo = $linha[1]; echo "<option value='$idmural'>$titulo</option>"; } ?> </select></td> <td> <!--<input type="hidden" name="apagar" value="excluir" />--> <input id="excluir" type="submit" name="excluir" value="Excluir" /> </td> </tr> </table> </form> </div><!--Painel-->
  5. Boa tarde pessoal! Estou criando um site para testar meus conhecimentos e fiz um formulário de exclusão como vou citar no código abaixo. O problema é que quando clico no botão Excluir não exclui o valor do banco e aparece uma mensagem de variável (idmural) não definida na linda 96, mas a mensagem de "Deletado com sucesso" aparece. Testei uma coisa, quando eu removo o $_POST[idmural] pelo número do id no banco, dá certo. O que eu estou fazendo de errado? Vejam o código: <!DOCTYPE html> <html> <head> <title>Painel de controle</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" href="estilo.css"> <?php include("../connections/connection.php"); $sql = mysql_select_db($database_Connection) or die("Erro ao conectar ao banco de dados, contate o administrador!"); ?> </head> <body id="bodypainel"> <div id="sair"> <a href="<?php echo $logoutAction ?>">Sair</a> </div> <div id="logopainel" > <img src="painel2.png" /> </div> <div id="painel"> <?php if (isset($_POST['apagar']) && $_POST['apagar'] == "excluir"){ $deleta = mysql_query("DELETE FROM mural WHERE idmural = '$_POST[idmural]'"); <----------Linda 96 if ($deleta == 1) { echo "Deletado com sucesso!"; } else { echo "Erro ao deletar!"; } } ?> <form id="form1" name="form1" mathod="post" action="" enctype="mulpart/form-data"> <table border="0" align="center"> <tr> <td id="titulo" colspan="2">Cadastrar Novo Mural</td> </tr> <tr> <td>Título</td> <td><input id="campo" type="text" name="titulo" size="62" placeholder="Título do novo mural"></td> </tr> <tr> <td>Texto</td> <td><textarea id="campo" name="texto" rows="10" cols="60"></textarea></td> </tr> </table> </form> </div> <!--Painel--> <div id="painel"> <?php $sql = "SELECT idmural, titulo FROM mural ORDER BY data DESC, idmural DESC"; $resultado = mysql_query($sql) or die(mysql_error()); if (@mysql_num_rows($resultado) == 0) { echo "Nenhum registro encontrado!"; } ?> <form id="form2" name="form2" method="post" action="" enctype=""> <table align="center"> <tr> <td><select> <option id="hoverSelect" value="apaga mural">Selecione o mural para exclusão.</option> <?php while ($linha = mysql_fetch_array($resultado)) { $idmural = $linha[0]; $titulo = $linha[1]; ?> <option id="hoverSelect" value="<?php echo $idmural; ?>"><?php echo $titulo; ?></option> <?php } ?> </select></td> <td> <input type="hidden" name="apagar" value="excluir" /> <input id="excluir" type="submit" name="excluir" value="Apagar Mural" /> </td> </tr> </table> </form> </div><!--Painel--> </body> </html>Obrigado pela atenção.
  6. Fala galera beleza? Estou estudando PHP OO, alguém pode me ajudar com a dúvida abaixo? Criei uma classe Conta.class.php, ela tem os métodos: construtor, destrutor, Retirar, Depositar e ObterSaldo. Agora, por que no método construtor o exemplo fez chamada somente aos métodos Depositar e ao atributo $Cancelada? Segue o código: <?PHP class Conta{ var $Agencia; var $Codigo; var $DataCriacao; var $Titular; var $Senha; var $Saldo; var $Cancelada; //Método construtor. function __construct($Agencia, $Codigo, $DataCriacao, $Titular, $Senha){ $this->Agencia = $Agencia; $this->Codigo = $Codigo; $this->DataCriacao = $DataCriacao; $this->Titular = $Titular; $this->Senha = $Senha; //Chamada a outro método da classe Conta. $this->Depositar(); $this->Cancelada = FALSE; } //Método destrutor. function __destruct(){ echo "Objeto Conta {$Conta->Codigo = $Codigo} de {$conta_hugo->Titular->Nome} finalizada. \n"; } //Metodos Retirar dinheiro //diminui saldo em $quantia. function Retirar($quantia(){ if($quantia > 0){ $this->Saldo -= $quantia; } } //Método obter Depositar //aumenta saldo em $quantia. function Depositar($quantia){ if($quantia > 0){ $this->Saldo += $quantia; } } //Método ObterSaldo. function Obtersaldo(){ $this->Saldo; } } ?>
  7. Hugão

    Fila em C++ (problema).

    Amigo, tive uma idéia aqui e estou tentando modificar o código. Assim que terminar postarei aqui ainda hoje. Quanto ao construtor, ainda não estudei isso.
  8. Hugão

    Fila em C++ (problema).

    A fila deve funcionar assim: 1 - Quando iniciada deve ser zerada automaticamente, mas no meu caso ela apresenta lixo em todas posições. 2 - Quando a fila for impressa, se estiver vazia, deve apresentar a mensagem de fila vazia, não está acontecendo comigo também. 3 - Quando excluídos todos os elementos na próxima exclusão, se estiver vazia, deve informar que está vazia, também não está funcionando. 4 - Na inpressão deve ser mostrada o endereço de memória em hexadecimal, também não consigo fazer mesmo com o %x. 5 - Não consegui fazer o programa como solocitado pelo professor (é um trabalho de faculdade). O que você me indica? Vamos começar o raciocínio do zero para absorver 100% o conhecimento de fila? Preciso entender isso. Você me ajuda? Acho melhor começar do zero. Suas explicações são claras para mim. Acho que pode ajudar.
  9. Hugão

    Fila em C++ (problema).

    Estou com um pequeno probleminha referente a essa fila. Na parte da impressão não estou conseguindo fazer ma condição para quando a fila estiver vazia apresentar a mensagem: FIla vazia! Jà tentei assim: void imprimeFila(){ if(f[fimFila]==0&&f[fimFila]==0){ printf("\n\nA fima está vazia!!\n"); } else{ printf("\n-----------------------------------------\n"); printf("| Posicao | Elementos | Endereco |\n"); printf("-----------------------------------------\n"); for(int i=0; i<TAMANHO; i++){ printf(" [%u] %u\n",i,f[i]); } } } Mas não acontece nada e quando tento assim: if(f[fimFila]==-1&&f[fimFila]==1) dá certo só quando zero a fila, pois o f[inicioFila] e f[fimFila] recebem o valor inicial de inicioFila e fimFila que é -1 atribuído no método inicializaFila. Alguma dica?
  10. Hugão

    Fila em C++ (problema).

    Eu estava errando porque estava lendo a variável op fora do while. Corriji e deu certo. Cara muito obrigado! Sou iniciante e autoditaca e está sendo ótimo poder ter a ajuda de pessoas como você. Muito obrigado. Abraço; Att, Hugo Sousa.
  11. Hugão

    Fila em C++ (problema).

    Não mudou nada. Na hora que mostro a fila há um loop infinito. Quando insiro o programa sai após eu digitar o elemento. O mesmo ocorre quando retiro. Você está ajudando muito! Muito obrigado pela sua atenção.
  12. Hugão

    Fila em C++ (problema).

    Ok, o imprime está ok! Agora ainda não consigo inserir, nem retirar, em ambos dá erro segmentação (apontando para um local de memória vazio). O método inicioFila funciona em parte, porque ele zera apenas as posições 0,1,5,6 e a última posição sempre vale 4.
  13. Olá galera. Fiz a fila abaixo, mas ela não insere, não retira e não imprime. Compila normalmente. Na execução ocorre uma mensagem de falha de segmentação: Segmentation fault O fonte da fila: #include <stdio.h> #include <stdlib.h> #include <iostream> #define TAMANHO 10 class minhaFila{ private: int inicioFila, fimFila, f[TAMANHO]; public: void inicializaFila(){ for(int i=0; i<TAMANHO; i++){ f[i]=0; } inicioFila=fimFila=-1; } void insere(int elemento){ if(fimFila!=TAMANHO){ fimFila++; f[fimFila]=elemento; } } void retira(){ if(inicioFila!=fimFila){ int elementoRetirado; inicioFila++; elementoRetirado=f[inicioFila]; f[inicioFila]=0; //return elementoRetirado; //printf("O elemento retirado foi %d: ",&elementoRetirado); } else {printf("A fila está vazia!");} } void imprimeFila(){ for(int i=TAMANHO; i<=f[fimFila]; i--){ printf("%d\n",f[i]); } } }; int main(){ minhaFila f1; int insereElemento,op; //f1.inicioFila(); printf("\n1- Inicializar fila \n2- Para inserir \n3- Para retirar \n4- Mostrar fila \n5- Sair\n\n"); scanf("%d",&op); switch(op){ case 1: f1.inicializaFila(); break; case 2: printf("Digite um número inteiro: "); scanf("%u",&insereElemento); f1.insere(insereElemento); //return main(); break; case 3: f1.retira(); //return main(); break; case 4: f1.imprimeFila(); //return 0; break; } system("PAUSE"); return 0; }
  14. Entendi! Perfeito! Agora está funcionando corretamente. Eu peguei as linhas referente aos fatores e joguei em cada opção do switch. Obrigado.
  15. Entendi +/-. Então o return 0 não serve de nada se escolhida a opção 5? Como faço para parar a execução e sair se escolhida a opção 5?
×
×
  • Criar Novo...