Jump to content

Joel F

Members
  • Content count

    30
  • Joined

  • Last visited

  • Days Won

    1

Joel F last won the day on September 20 2016

Joel F had the most liked content!

Community Reputation

6 Regular

About Joel F

  1. Joel F

    Consulta várias dados e criar várias dados

    Tenta assim, se você quiser usar foreach: $alunos = mysqli_query($conn,"SELECT * FROM alunos"); foreach($alunos as $aluno): $qry = "INSERT INTO premio(nome, premio) VALUES($aluno['nome'], $aluno['nota'])"; mysqli_query($conn,$qry); endforeach; Ou assim, se você quiser usar while: $alunos = mysqli_query($conn,"SELECT * FROM alunos"); while($aluno = mysql_fetch_assoc($alunos)): $qry = "INSERT INTO premio(nome, premio) VALUES($aluno['nome'], $aluno['nota'])"; mysqli_query($conn,$qry); endwhile; Mas não mistura os dois.
  2. Joel F

    Mostrar mensagem validação PHP

    Para limpar o campo é só por no success: success: function(data){ if(data === 1){ $("#id_nome_do_campo").val(""); } } Parra melhorar o seu código assiste uns video sobre $_POST[] e sobre a função javascript serialize()
  3. Joel F

    Mostrar mensagem validação PHP

    Da um alert(data) dentro da function success e coloca aqui o que deu. Essa parte do seu código também tem um erro: if (($erro==0) AND (!isset($msg_erro))) Você ta comparando se erro é igual a 0 mas erro só e definida caso exista um erro e nesse caso erro recebe o valor de 1. Acho que seu código ficaria lógico se você colocasse. if (isset($_POST['pessoa_nome']) && ($_POST['teste_coluna']!="")): $pessoa_nome = $_POST['pessoa_nome']; $teste_coluna = $_POST['teste_coluna']; $erro = 0 //...Define valor padrão para 0 como default; if (strlen($pessoa_nome) < 7): $erro = 1; //muda valor de erro para 1 echo = "Nome inválido!"; endif; if ($erro==0): //...Se erro igual a 0; $Sql = "INSERT INTO aaa_teste (coluna_teste, teste_coluna) VALUES ('$pessoa_nome', '$teste_coluna')"; $Resultado = executa($Sql); if ($Resultado): echo "1"; else: echo "0"; endif; endif; endif Se mesmo assim não printar nada então coloque um echo 'texte' antes do primeiro if no php. Se printar então significa que o problema esta na hora que você passa as variáveis via ajax: tente mudar o código ajax passando para o parâmetro data como json. $.ajax({ type: "POST", url: "ajx_pes_cad.php", data: { "pessoa_nome" : pessoa_nome, "teste_coluna" : teste_coluna, "mensagem" : msg } success: function(data){ $("#mensagem").html(data); } });
  4. Joel F

    Mostrar mensagem validação PHP

    Boa tarde, O que vai ter no data do success é o que o arquivo php printa. Ou seja altera essa parte do código: if (strlen($pessoa_nome)<7){ $erro=1; $msg_erro = "Nome inválido!"; // GOSTARIA QUE APARECESSE ESTA MENSAGEM NO MEU FORMÁRIO } para if (strlen($pessoa_nome)<7){ $erro=1; echo "Nome inválido!"; } Não diria que esta seja a melhor solução, mas é a mais simples para o que você precisa.
  5. Joel F

    Consulta várias dados e criar várias dados

    Faz o seguinte, Coloca esse codigo no php echo '<pre>' print_r($alunos) echo '</pre>' e posta o que deu para eu ver o que ta vindo do bd. Além disso note que você armazena o resultado do bd na variável $usuarios e no foreach usa $alunos. Talvez o erro esteja ai.
  6. Joel F

    Atribuir variavel

    Tem sim mas ai você você vai ter que fazer uma requisição para o servidor uma vez que o php roda só no servidor. O que você tem que decidir é se vai fazer essa requisição normalmente recarregando a pagina ou se você vai querer fazer através de uma requisição assíncrona. Nesse caso facilita muito usar a biblioteca Jquery. Detalhe melhor o quer você quer ter como resultado final que facilita indicar o caminho até lá.
  7. Joel F

    Criar array de dados e jogar na view

    Caramba complicado de entender esse framework em. Por isso que só uso o bom e velho puro php estruturado em MVC. Vou dar uma explicação pelo que entendi aqui ok. A linguagem PHP é fracamente tipada logo o tipo da variável é definido pelo contesto. Se eu tiver uma tabela como exemplo essa -------------------------- id | nome | valor | -------------------------- 1 | luz | 50 | -------------------------- 2 | agua | 40 | -------------------------- Fazendo uma consulta nessa tabela e solicitando retorno como fetch_assoc seria visualizavel assim: [ 0 => [ id => 1, nome => luz, valor => 50 ] 1 => [ id => 1, nome => agua, valor => 40 ] ] Agora suponha que nesse array eu queira adicinar um campo de porcentagem do valor onde o valor seria divido por 100. Então eu faria assim. for($i = 0; $i < cont($rows); $i++): $valor = $rows['$i']['valor']; $porcentagem = $valor / 100; $rows[$i] += ['porcentagem' => $porcentagem] endfor; Isso iria gerar o array associativo: [ 0 => [ id => 1, nome => luz, valor => 50, porcentagem => 0.5 ] 1 => [ id => 1, nome => agua, valor => 40, porcentagem => 0.4 ] ] Agora é só enviar esse array para view e deixar esse fazer o seu trabalho. Simples.
  8. Joel F

    checkbox php

    Acho que o form abaixo faz o que voce precisa. Pelo que entendi formulario.php só aceita alterar um por vez. Então troquei o type="checkbox" que permite selecionar vários pelo type="radio" que permite selecionar apenas um. <form action="formulario.php" method="get"> <input type="radio" name="id" value="1">Opção 1<br> <input type="radio" name="id" value="2">Opção 2<br> <input type="radio" name="id" value="3">Opção 3<br> <input type="submit" value="Submit"> </form>
  9. Joel F

    Consulta várias dados e criar várias dados

    Boa tarde, Primeiro vamos abstrair o que você precisa. Pelo que entendi você precisa: O total de notas da tabela alunos; Calcular quanto de premio para cada ponto da nota; Calcular o premio para as notas individuais; Inserir na tabela premio o premio para cada aluno. Eu não sei se você omitiu apenas na descrição da pergunta, mas é fundamental e uma boa pratica adicionar um campo id a sua tabela que seja autoincrement, index e chave primaria. Usar o nome como id pode gerar erros uma vez que pode haver dois nomes iguais. Além disso relacionamentos de tabela só são permitidos entre campos index. Eu faria as tabelas assim. alunos --------------------------------- | id | nome | nota | --------------------------------- premios --------------------------------- | id | aluno_id | premio | --------------------------------- Uso um framework PDO que desenvolvi a tanto tempo que esqueci como funciona o msqli, então talvez você tenha que alterar o codigo a seguir para funcionar no seu aplicativo. //...Primeiro vamos usar a função SUM() do mysql/mariadb para somar os valores do campo nota. $totalNota = mysqli_query($conn,"SELECT SUM(nota) FROM alunos"); //...Agora vamos calcular o quanto de premio para cada nota. //...Mas primeiro vamos verificar se a consulta deu certo e mysql/mariadb retornou um numero. if(is_numeric($totalNota)): $premioPorPonto = $premio / $totalNota; else: echo "Erro: Consulta não retornou um numero"; endif; //Agora que tempos o premio por ponto só resta multiplicar pela nota e inserir na tabela premio. $result = mysqli_query($conn,"SELECT * FROM alunos"); $alunos = mysqli_fetch_assoc($result); foreach($alunos as $aluno): //...Calculamos o premio individual por aluno. $premioAluno = $aluno['nota'] * $premioPorPonto; //...Inserimos na tabela premio a nota e o id do aluno mysqli_query($conn,'INSERT INTO premios (aluno_id, premio) VALUES ('. $aluno['id'].','.$premioAluno.')'; endforeach; Agora para printar isso você pode usar INNER JOIN $result = mysqli_query($conn,"SELECT a.nome, a.nota, b.premio FROM alunos AS a INNER JOIN premios AS b ON a.id = b.aluno_id"); Isso vai gerar uma tabela de resultados assim: -------------------------------- | nome | nota | premio | --------------------------------
  10. Joel F

    Como deixar option selected com o nome BRASIL como padrão

    É facil, alterando o próprio codigo que você colocou. <?php $sqlPais = "SELECT ID,NOME FROM pais ORDER BY NOME"; $paises = $conexao->query($sqlPais); //eu partigulamente acho o foreach um função muito legal do php por isso vou trocar uma parte do //seu codigo mas isso não influencia na logica só acho que fica mais compreensivel. Funciona //desde que o $conexão->query($sqlPais) retorne tipo FETCH_ASSOC. foreach($paises as $pais): ?> <option <?php //Aqui é só você verificar //no seu BD qual o id de Brasil e colocar no lugar do 1 ai quando for printar o <option> e o //id for igual ao indicado o php printa o selected="selected" na tag <option> isso vai //fazer com que ela apareça como selecionada por default. if($pais['ID'] == 1) echo 'selected="selected"'; ?> value="<?php echo $pais['ID'] ?>"><?php echo $pais['NOME'] ?></option> <?php endforeach; ?>
  11. Joel F

    Problemas com o Plugin TinyMCE

    Ola, pessoal. Primeiramente queria agradecer a ajuda de vocês. Finalmente eu consegui encontrar o problema. Quando eu instalei o tinymce eu fiz com base numa demo muito completa. Essa demo ativava alguns plugins. ex: tinymce.init({ ... plugins: [ "advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker", "searchreplace wordcount visualblocks visualchars code insertdatetime media nonbreaking", "table contextmenu directionality emoticons template textcolor paste" ], ... }); Um dos plugins era um chamado autosave. Era esse plugin que tava gerando esse comportamento estranho do tinymce. Depois que apaguei ele da lista, tudo começou a funcionar como o esperado. Vlw pessoal!
  12. Joel F

    Problemas com o Plugin TinyMCE

    Eu dou reflesh na pagina inteira. Os campos são zerados com o valor nulo que vem do servirdor. O campo que é o alvo do tinymce recebe valor nulo. O problema é que o tinymce não atualiza com esse valor ele mantem o valor original aparentemente armazenado na memoria do navegador. Preciso zerar essa memória.
  13. Olá pessoal, Bem estou tendo problemas com o tinyMCE. Eu tenho ele em varias paginas do meu painel admim. O problema surge quando eu cadastro algo no banco de dados os outros campos são zerados mas o que recebe o tinymce permanece com o texto e mesmo quando vou para outro pagina ele permanece com o texto. O que eu preciso é de uma forma de apagar o texto armazenado na memoria quando a pagina é atualizada. Já tentei destroir e reconstruir o objeto tinymce, colocar valor padrão. Mas nada adianta ele continua mantendo o texto anterior. Desde já agradeço qualquer ajuda.
  14. Joel F

    [Resolvido] Zerar um auto-increment em MySQL ?

    2013 e ainda util.
×

Important Information

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