joseph_dev
-
Posts
108 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por joseph_dev
-
-
Se for só em HTML, você pode colocar o elemento html que você quer o foco no fim da página e depois colocar o id dele na url dessa forma:
meusite.com.br/#id_elemento
-
SELECT valida_cpf_cnpj('999999999') FROM dual
-
O conceito da trigger você já está sabendo. Qual seria sua dúvida em relação a esses 2 procedimentos?
-
Rpz para cada estado há uma estrutura diferente do RG.
Achei esse exemplo para SP: http://www.profcardy.com/cardicas/rg.php
-
Você vai fazer sem interface para o usuário? É trabalho escolar, apenas didático?
Como você vai precisar de um retorno desse código, você vai fazer uma "function" pois uma "procedure" não retorna nada, apenas executa algo. Acho que é um bom começo para suas pesquisas.
Na questão da validação, é apenas no formato do texto ou tem que validar o número em si?
-
Po cara, eu fiz em mysql. Foi mal. Segue em mssql:
CREATE TRIGGER ex2_itempedido_trg ON ex2_itempedido AFTER INSERT AS BEGIN DECLARE @codproduto INT, @qtdpedido INT SELECT @qtdpedido = quantidade, @codproduto = codproduto FROM INSERTED UPDATE ex2_produto SET quantidade = quantidade - @qtdpedido WHERE codproduto = @codproduto; END GO
Você tem uma espécie de tabela temporária (espelho da tabela afetada) com os registros inseridos (INSERTED), atualizados (UPDATED) ou deletados (DELETED). Sendo assim você pode fazer a atualização da quantidade na mesma trigger em cada operação. Nesse caso na linha "AFTER INSERT", ficaria "AFTER INSERT, UPDATE, DELETE" e voce faz o tratamento para cada situação.
Seria bom pensar em um campo "situacao" na tabela de pedido para indicar se o pedido foi cancelado, devolvido ou algo assim. E então no UPDATED voce faz o tratamento para repor essa quantidade no estoque. Desse modo não perde o registro do pedido.
-
18 horas atrás, joseph_dev disse:
O primeiro registro que achei do google:
Vê se o método 1 funciona.
No método 1 não precisa baixar programa. Mas acho q deveria ser feito logo após o desligamento. O método 2 é apenas para arquivos excluídos, que não é o seu caso. Caso precise usar mesmo um bloco de notas, use o notepad++, esse sim salvaria seu trabalho nessa situação.
Bola pra frente. Boa sorte no trabalho!
- 1
-
Faça um teste em ambos scripts colocando o nome de arquivo fixo ex: "teste.sql" e depois apenas "teste" (sem a extensão).
-
O primeiro registro que achei do google:
Vê se o método 1 funciona.
-
Essa propriedade corresponde ao conteúdo html do elemento em questão.
Ex:
<div> <span>Meu conteúdo.</span> </div>
Quando você "pega" o innerHTML dessa div acima você tem: "<span>Meu conteúdo.</span>". E quando você atribui um valor/conteúdo, você "coloca" dentro das tags <div></div>, substituindo o atual.
Porém essa função no seu código está incompleta. A variável nome deveria se referir ao elemento <p>. Você precisa atribuir a ela usando a função nativa do javascript getElementById.
<script> function escreverNome() { var nome = document.getElementById("nome"); nome.innerHTML = "Jorge Toscano"; } </script>
E algum elemento (um botão...) deve disparar essa função, ou então colocar no onload da página para assim que carregar a página executar a função.
-
Qual seria sua dúvida? Em que pé está seu projeto? Está apresentando algum erro no console?
-
Ao invés de usar css para customizar sua tela, use as tags e as classes do bootstrap e suas variações de classes para organizar ela. Use o css apenas para o excepcional mesmo. Isso vai ajudar na responsividade. Pela estrutura do seu site, dá para fazer quase tudo sem css. Qual versão do bootsrap você tá usando?
-
Você testou com as duas classes?
Faça um teste sem o seu css e sem esse background.
Vá adicionando um componente por vez para ver o comportamento da página. De preferência use o container responsivo para seu site poder ser aberto em vários dispositivos.
-
Faça um teste colocando todo seu código dentro de uma div com a classe "container". Da seguinte forma:
... <body> <div class="container"> <!--Seu código fica todo aqui--> </div> </body> ...
Segundo a documentação do bootstrap, esse container ajusta automaticamente seu conteúdo as dimensões da tela tornando o site responsivo.
Teste também a classe "container-fluid". No lugar de "container" coloque "container-fluid". Segundo a documentação, esse container ajusta automaticamente seu conteúdo a largura total da tela. Obviamente, o responsivo é melhor.
-
Será que esse array $texto não está ficando com um array dentro de outro array?
Tipo:
Array( (0) => Array ( (id) => '1', (nome) => 'Maria', (val) => '2000' ), (1) => Array ( (id) => '4', (nome) => 'Joao', (val) => '5000' ) )
-
Pelo que entendi do seu esquema, acho que seria o seguinte:
DELIMITER $ CREATE TRIGGER ex2_itempedido_tgr AFTER INSERT ON ex2_itempedido FOR EACH ROW BEGIN SELECT @qtd_atual = quantidade FROM ex2_produto WHERE codproduto = NEW.codproduto; UPDATE ex2_produto SET quantidade = (@qtd_atual - NEW.quantidade) WHERE codproduto = NEW.codproduto; END$
Fica o desafio pra você criar a trigger quando o item for devolvido ou o pedido cancelado e atualizar a quantidade do produto.
Dica: (AFTER DELETE OU AFTER UPDATE - Use os recursos OLD e NEW para ter acesso aos campos que estão sendo usados no momento.)
-
De acordo com as funcionalidades citadas, precisaremos das tabelas:
(só colocarei os campos principais. você completa os demais que achar necessário)
-usuario (será uma pessoa com um tipo de usuário definido para acesso)
idUsuario(int), idPessoa(fk), idTipoUsuario(fk), login(varchar), senha(varchar)
-tipousuario (atendente, dentista - terão permissões e acesso a campos diferentes)
idTipoUsuario(int), descricao(varchar)
-pessoa (será paciente e também será associado a um usuário)
idPessoa(int), nome(varchar), cpf(varchar), telefone(varchar)
-tratamento (será a consulta)
idTratamento(int), idPessoa(fk), idUsuario(fk), dataCadastro(datetime)
-procedimento (tipos de procedimentos - consulta inicial, orçamento, canal, limpeza, extração...)
idProcedimento(int), descricao(varchar)
-consulta (1:n um tratamento pode ter várias consultas até finalizar. Um registro para cada dia de consulta)
idConsulta(int), idTratamento(fk), data(datetime), observacoes(varchar), atendido(char)
-consulta_procedimento (1:n - Uma consulta/tratamento pode ter vários tipos de procedimentos num mesmo dia)
idConsulta(pk), idProcedimento(pk)
Opcional: Considerando que seja permitido pagamento mesclado ex: parte em dinheiro e parte no cartão.
-pagamento
-tipo_pagamento (cartão, dinheiro, autorização do plano)
-consulta_pagamento
Caso não seja necessário, basta um campo na tabela tratamento sinalizando se foi pago ou não para simplificar.
Acho que é o mais enxuto que conseguimos, seguindo as normas.
Você consegue enxergar as chaves primárias e estrangeiras nos relacionamentos aí? Tenta fazer e caso não consiga você fala.
-
Não vou fazer o exercício mas vou te dar um caminho.
1- Se você está usando apenas um input para digitar os números, defina um delimitador para separar os números. Ex: uma vírgula. Sempre que digitar os números, separe eles pela vírgula.
2- No PHP, você vai quebrar esse texto que tem os números separados por vírgula usando a função interna explode. Você vai obter um array com todos os números.
3- Percorra este array e usando um array auxiliar, compare os valores e use as funções internas array_push, array_pop, array_unshift e array_splice para adicionar ao array auxiliar no início do array, em certa posição ou no fim do array. Dá uma olhada no PHP Manual para saber qual funcão você vai usar no momento a depender da comparação.
4- Após a ordenação você pode usar a função implode no novo array ordenado e gerar uma string com os números separados por vírgula.
Agora é só quebrar a cabeça aí.
-
Concordo com washalbano. O ideal seria você implementar uma ferramenta no seu código para o cliente fazer o recorte da imagem com o mouse no momento do cadastro. Já que o sistema não vai saber se o recorte é para ser na parte de cima, na parte de baixo ou até mesmo no centro da imagem. Tem alguns plugins/ferramentas desse tipo na web.
-
Veja se atende...
<? $msg = "" //executa a consulta de login e no bloco do login adiciona: if($login == false){ $msg = "alert('Login ou Senha inválidos!');" } ?> <!--na estrutura html chama a variavél--> <script> window.onload = function(){ <?echo $msg?> } </script> <!--caso a consulta de login não tenha sido executada a $msg vai ser "" e nada será exibido.-->
-
Você pode pesquisar pelos frameworks de backend... symfony, cake, entre outros... Eles já tem estrutura pronta para isso. Você só configura as routes/annotations do seu ambiente e o framework faz tudo sozinho.
Caso você queira fazer isso do zero, você vai precisar criar uma classe que recebe todas as requisições e através da URL, faz a quebra da string e direciona para a respectiva classe (arquivo) php.
Você tá querendo criar um ou configurar uma estrutura pronta?
- 1
-
A grosso modo, você usa ele quando tem um campo que não tem um valor obrigatório ou que você só vai preencher ele depois. E para não armazenar um valor como um varchar em branco, uma data falsa ou 0 (quando não tem valor definido), você usa o NULL para não ocupar muito espaço no banco.
Ex.
Tabela FUNCIONARIO
ID NOME SEXO DATA_ADMISSAO DATA_DEMISSAO
5 JOÃO M 01/01/2018 NULL
12 MARIA F 01/01/2019 01/10/2020
19 PEDRO M 01/01/2020 NULL
- 1
- 1
-
Você faz uma outra consulta agrupando e fazendo a soma porém une elas com o UNION.
Ficaria tipo assim:
select a, b, c, null total from tab group by x union select null a, null b, null c, sum(z) total from tab group by w
Lembrando que o union exige que as duas consultas tenham a mesma quantidade de campos... por isso na segunda consulta os primeiros campos sao nulos apenas para preencher esse requisito.
-
A forma mais simples é: se a quantidade de registros forem poucos e fixos, você pode agrupar e usar o MAX para cada um desses registros o tornando colunas.
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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
LOOP em mal funcionamento (ERRO de LOGICA)
em Web e banco de dados
Postado
Será esse "var rel = rel" logo após o for? Muda o nome dessa variável pois já tem uma variável declarada no for.