Ir para conteúdo

gersonab

Members
  • Total de itens

    456
  • Registro em

  • Última visita

Tudo que gersonab postou

  1. gersonab

    pegar uma data anterior

    já resolvi, pode não ser a solução ideal, porém esta funcionando conforme minha necessidade. $datab = implode("-",array_reverse(explode("-",$user['datab']))); echo date('d/m/Y', strtotime('-15 days', strtotime($datab)));
  2. gersonab

    autocomplete, obrigar aquisição do id

    resolvi da seguinte forma $("#localiza").submit(function () { var vazios = $("input[name=idc]").filter(function() { return !this.value; }).get(); if (vazios.length) { $(vazios).addClass('vazio'); alert("Seleção inválida ou vazia."); return false; } });
  3. gersonab

    autocomplete, obrigar aquisição do id

    Boa tarde, tenho uma página de pesquisa com vários campos, podendo usar um apenas para pesquisa, fica a critério da pessoa, o que acontece é que todos os campos quando se faz o autocomplete ele envia a pesquisa pelo id, porém se eu enviar o campo em vazio o formulário envia assim mesmo a pesquisa, gostaria que só enviasse caso estivesse com o id. segue o formulário: <h4>Localizar por ...</h4> <form role="form" action="listcliente.php" method="GET" autocomplete='off'> <div class="form-row mb-4"> <div class="form-group col-md-12"> <label>Nome ou ...</label> <input type="text" name="nomec" id="nomec" class="form-control" style="text-transform: uppercase;"> <input type="hidden" name="idc" id="idc"> </div> </div> <div class="form-row mb-4"> <div class="form-group col-md-4"> <label>CPF ou ...</label> <input type="text" name="cpfc" id="cpfc" class="form-control"> </div> <div class="form-group col-md-4"> <label>CNPJ ou ...</label> <input type="text" name="cnpj" id="cnpj" class="form-control"> </div> <div class="form-group col-md-4"> <label>Data de nascimento</label> <input type="text" name="datan" id="datan" class="form-control"> </div> </div> <input type="submit" name="Localizar" value="Localizar" class="btn btn-primary mt-3"> </form> o autocomplete, apenas um de exemplo. $( "#nomec" ).autocomplete({ minLength: 2, source: function( request, response ) { $.ajax({ url: "../lista/autocli.php", type: 'post', dataType: "json", data: { search: request.term }, success: function( data ) { response( data ); } }); }, select: function (event, ui) { $('#nomec').val(ui.item.label); // display the selected text $('#idc').val(ui.item.value); // save selected id to input return false; } }); a página autocli.php <?php require_once('config.php'); if(isset($_POST['search'])){ $search = $_POST['search']; $query = "SELECT nomec, idc FROM cli WHERE nomec LIKE '%".$search."%'"; $result = mysqli_query($con,$query); $response = array(); while($row = mysqli_fetch_array($result) ){ $response[] = array("value"=>$row['idc'],"label"=>$row['nomec']); } echo json_encode($response); } exit; ?> desde já agradeço a ajuda.
  4. gersonab

    Loop while não ocorre

    Bom dia, tenho 2 tabelas editáveis em uma div, estas funcionam normalmente, o problema é que o loop não acontece , só carrega sobre 1 item, sendo que este eu posso ter mais itens. na página principal tenho: <div class="carregadados"></div> function fetch_data() { $.ajax({ url:"../lista/finan.php", method:"POST", success:function(data){ $('.carregadados').html(data); } }); } fetch_data(); a página a ser carregada esta assim: <?php session_start(); require_once('config.php'); $output = ''; $idc1=$_SESSION['idc']; $sql01 = "SELECT * FROM porcent WHERE idfcli='$idc1'"; $result = mysqli_query($con, $sql01); while($user41 = mysqli_fetch_array($result)){ // primeiro while onde seleciono os itens da pessoa podendo ter vários $output .= ' <div class="table-responsive mb-4 mt-4"> Aqui vem os dados da pessoa '; $id1= $user41["idproc"]; $sqladv = "SELECT * FROM poradv WHERE procav='$id1'"; $resulta = mysqli_query($con, $sqladv); $output .= ' <table class="table table-bordered table-hover table-striped" style="width:100%"> <thead> <tr> </tr> </thead> <tbody>'; if(mysqli_num_rows($resulta) > 0) { while($usera = mysqli_fetch_array($resulta)){ //segundo while onde tenho os dados de venda em uma tabela editavel $output .= ' <tr> </tr>'; } $output .= ' <tr> // insiro linhas caso precise </tr> '; } else { $output .= '<tr> // caso não tenha nada inserido, posso fazer por aqui </tr> '; } $output .= '</tbody> </table>'; $id2= $user41["idproc"]; $sql = "SELECT * FROM parcelas WHERE procid='$id2' ORDER BY datapar, idpar ASC"; $result = mysqli_query($con, $sql); $output .= ' <table class="table table-bordered table-hover table-striped" style="width:100%"> <thead> <tr> // tabela de pagamentos editavel </tr> </thead> <tbody>'; if(mysqli_num_rows($result) > 0) { while($row = mysqli_fetch_array($result)) { //terceiro while , tabela referente a pagamentos $output .= ' <tr> // tabela pagamentos </tr>'; } $output .= ' <tr> // insiro linhas caso precise </tr> '; } else { $output .= '<tr> // caso não tenha nada inserido, posso fazer por aqui </tr> '; } $output .= '</tbody> </table> </div> '; } echo $output; ?> só esta carregando uma vez , tudo dentro da parte editável esta funcionando, porém no primeiro while só faz 1 loop, os demais estão funcionando perfeitamente. desde já agradeço qualquer ajuda.
  5. gersonab

    Loop while não ocorre

    Depois de modificado o loop ocorre normalmente, mostrando os resultados normal, só que ao inserir novos itens, só grava como se fosse do primeiro, tipo : <?php session_start(); require_once('config.php'); $output = ''; $idc1=$_SESSION['idc']; $sql01 = "SELECT * FROM porcent WHERE idfcli='$idc1'"; $result = mysqli_query($con, $sql01); while($user41 = mysqli_fetch_array($result)){ // primeiro while onde seleciono os itens da pessoa podendo ter vários $output .= ' <div class="table-responsive mb-4 mt-4"> Aqui vem os dados da pessoa '; $id1= $user41["idproc"]; $sqladv = "SELECT * FROM poradv WHERE procav='$id1'"; $resulta = mysqli_query($con, $sqladv); $output .= ' <table class="table table-bordered table-hover table-striped" style="width:100%"> <thead> <tr> </tr> </thead> <tbody>'; if(mysqli_num_rows($resulta) > 0) { while($usera = mysqli_fetch_array($resulta)){ //segundo while onde tenho os dados de venda em uma tabela editavel $output .= ' <tr> tabela 1 </tr>'; } $output .= ' <tr> <td style="display:none;"></td> <td id="procav">'.$user41["idproc"].'</td> <td id="adv" contenteditable></td> // insiro linhas caso precise +++++++++++++++++++++++++++++++++++++++++++++++++++ </tr> '; } else { $output .= '<tr> <td style="display:none;"></td> <td id="procav">'.$user41["idproc"].'</td> <td id="adv" contenteditable></td> // caso não tenha nada inserido, posso fazer por aqui ++++++++++++++++++++++++++++++++++++++++ </tr> '; } $output .= '</tbody> </table>'; $id2= $user41["idproc"]; $sql = "SELECT * FROM parcelas WHERE procid='$id2' ORDER BY datapar, idpar ASC"; $resultxx = mysqli_query($con, $sql); $output .= ' <table class="table table-bordered table-hover table-striped" style="width:100%"> <thead> <tr> // tabela de pagamentos editavel </tr> </thead> <tbody>'; if(mysqli_num_rows($resultxx) > 0) { while($row = mysqli_fetch_array($resultxx)) { //terceiro while , tabela referente a pagamentos $output .= ' <tr> // tabela pagamentos </tr>'; } $output .= ' <tr> <td style="display:none;"></td> <td id="procid">'.$user41["idproc"].'</td> <td id="valorp" contenteditable></td> // insiro linhas caso precise ++++++++++++++++++++++++++++ </tr> '; } else { $output .= '<tr> <td style="display:none;"></td> <td id="procid">'.$user41["idproc"].'</td> <td id="valorp" contenteditable></td> // caso não tenha nada inserido, posso fazer por aqui +++++++++++++++++++++++++++++++++ </tr> '; } $output .= '</tbody> </table> </div> '; } echo $output; ?> onde eu coloquei o sinal de ++++ é onde estou tendo dificuldade , mostra o id conforme o loop , correto , porém ao inserir novos registros ele esta salvando com o id do primeiro loop.
  6. gersonab

    Ajuda com else

    tente assim SELECT aluno FROM escola WHERE colegio_id='$colid' if(mysql_num_rows($botaoaluno) > 0){ não expert , mas faria isso, lembrando do mysqli editado
  7. gersonab

    Ajuda com else

    tenta assim : if(mysqli_num_rows($pegaralunos) > 0){ na query coloca aspas duplas no userid
  8. gersonab

    Resultado da coluna na ultima linha da tabela

    você pode utilizar array_sum ou no próprio mysql se der SUM(coluna) AS
  9. gersonab

    Ajuda com else

    primeiro use mysqli ou pdo , no if coloca == ( igual duplo )
  10. gersonab

    Loop while não ocorre

    O loop não ocorria pq no último while eu repeti o result do primeiro. $result = mysqli_query($con, $sql); foi só modificar que funcionou normalmente
  11. gersonab

    Armazenamento de arquivos em nuvens

    Boa tarde a todos, tenho um sistema de upload de arquivos que funciona perfeitamente, agora eu gostaria que estes arquivos fossem armazenados em nuvem, não no servidor, poderiam indicar um tutorial ou como proceder.
  12. gersonab

    Como mantar o usuário logado e dar logoff por inatividade?

    não sei até onde você chegou, mas pelo tempo eu consigo, porém fechando o navegador, perde a sessão mas não muda o status. falta mudar o status ao fechar o navegador. <?php if (!isset($_SESSION)) session_start(); require_once('../curio.php'); if (!isset($_SESSION['UsuarioNivel']) == 1 ) { header("Location: index.php"); exit; } if (!isset($_SESSION['registro']) && !isset($_SESSION['limite']) ) { header("Location: index.php"); $sqlo1=$pdo->prepare("UPDATE prof SET status = :status WHERE idp = :idp"); $sqlo1->bindValue(':status',0); $sqlo1->bindParam(':idp',$_SESSION['UsuarioID'], PDO::PARAM_INT); $sqlo1->execute(); exit; } if ($_SESSION['registro']) { $segundos = time() - $_SESSION['registro']; } if( $segundos > $_SESSION["limite"]){ $sqlo2=$pdo->prepare("UPDATE prof SET status = :status WHERE idp = :idp"); $sqlo2->bindValue(':status',0); $sqlo2->bindParam(':idp',$_SESSION['UsuarioID'], PDO::PARAM_INT); $sqlo2->execute(); unset ($_SESSION['UsuarioID']); unset ($_SESSION['UsuarioNome']); unset ($_SESSION['UsuarioNivel']); unset ($_SESSION['UsuarioUser']); unset ($_SESSION['UsuarioSenha']); unset ($_SESSION['UsuarioEmail']); session_destroy(); header("Location: ../index.php"); exit; } else { $_SESSION['registro'] = time(); } ?>
  13. gersonab

    link com caracteres estranhos

    boa noite, estou reabrindo este tópico pois esta relacionado diretamente a ele, um caso estranho esta acontecendo e não estou conseguindo resolver, conforme relatado acima um problema com gravações de arquivos e seus respectivos nomes no banco de dados, foi acertado o cadastro dos mesmo , ficando todos com seus respectivos caracteres normais, porém hoje me deparei com outro problema, começou a aparecer aquela interrogação no local do caractere , verifiquei no bd e o mesmo esta com sua acentuação normal, o arquivo também esta normal, assim esta minha configuração. minhas páginas estão com chartset UTF-8 , meu banco esta utf8_general_ci , minha conexão esta $pdo = new PDO("xxxxxx(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); não sei o que esta ocorrendo. para tentar contornar estou usando .. $cur_encoding = mb_detect_encoding($foto) ; if($cur_encoding = "Windows-1252") { $fotocerta = mb_convert_encoding($foto, 'Windows-1252', 'UTF-8'); } elseif($cur_encoding = "ISO-8859-1") { $fotocerta = mb_convert_encoding($foto, 'ISO-8859-1', 'UTF-8'); } else { $fotocerta = $foto;} porém o famoso ? continua aparecendo nos cadastros com acentos
  14. gersonab

    link com caracteres estranhos

    Bom dia, estou com um problema aqui, reparando um sistema em que neste já se encontram mais de 4000 arquivos cadastrados, só que quem fez não se atentou para os caracteres, já refiz a programação do mesmo e o cadastro esta normal, sendo que praticamente 2800 arquivos foram cadastrados de forma errada, por exemplo: nome do arquivo cadastrado -> COMUNICAÇÃO.pdf forma que foi gravada no banco e na pasta -> COMUNICAÇÃO.pdf ao clicar para abrir, o mesmo da erro, não é encontrado -> was not found on this server. tem alguma maneira de reparar o link sem ter que renomear todos estes arquivos na pasta e no banco de dados ?
  15. gersonab

    resgatar valor da classe de um span com php

    Em pesquisa feita já havia reparado , obrigado.
  16. gersonab

    resgatar valor da classe de um span com php

    Bom dia , preciso resgatar o valor de uma class e usar numa query , a class no caso é idname conforme abaixo. <div class="chat-meta-user"> <div class="current-chat-user-name"><span><img src="../fotos/<?php if ($fotop != ''){ echo $fotop; } else { echo 'semfoto.png'; } ?>" width="50" height="66" alt="avatar"><span class="name"></span><span class="idname"></span></span></div> </div> ao inspecionar no chrome ela aparece normalmente <span class="idname">31</span>
  17. gersonab

    Gerar datas de vencimento

    Já pesquisei na internet varias formas de gerar as datas automaticamente de parcelas, o mais próximo que cheguei foi neste abaixo, cadastra as parcelas com seus valores só que a data esta zerada, esta salvando assim 0000-00-00 , o campo é date. if(!empty($_POST)) { $procid = $_POST['procid']; $valorp = str_replace('.','', $_POST['valorp']); $datapar = $_POST['datapar']; $date = implode("-",array_reverse(explode("/",$datapar))); $obspar = $_POST['obspar']; $nr_parcelas = $_POST['nr_parcelas']; for($i = 0; $i < $nr_parcelas; $i++) { $dat[$i] = date("Y-m-d",strtotime($date ." +$i month")); $sql=$pdo->prepare("INSERT INTO parcelas ( procid, nr_parcelas, valorp, datapar, obspar) VALUES ( :procid, :nr_parcelas, :valorp, :datapar, :obspar)"); $sql->bindValue(':procid',$procid); $sql->bindValue(':nr_parcelas',$i); $sql->bindValue(':valorp',$valorp); $sql->bindValue(':datapar',$dat); $sql->bindValue(':obspar',$obspar); if ($sql->execute() === false){ echo "<pre>"; print_r($sql->errorInfo()); } } } desde já agradeço.
  18. gersonab

    Gerar datas de vencimento

    Desculpa galera, já resolvi aqui faltava o [$i] ---> $sql->bindValue(':datapar',$dat[$i]);
  19. gersonab

    consultar cep pelo endereço

    é exatamente este que estou usando agora
  20. gersonab

    consultar cep pelo endereço

    Bom dia. utilizava um código para completar o endereço conforme o cep, funcionando perfeitamente, só que preciso pegar o cep caso não tenha, pelo endereço digitado, pesquisando pela internet encontrei o código abaixo, funciona perfeitamente para os dois casos, só que .... no meu formulário tenho dois campos de endereço, um residencial e outro de trabalho, o código que utilizava antes funcionava para os dois campos, erá só mudar o id do campo do formulário, tipo se eu tinha id="logadouro" em um campo no outro id="logadouro1", só que .... no código atualizado para ambas as pesquisas esta forma não funciona, gostaria da ajuda de vocês para este problema. código antigo: function limpa_formulário_cep() { $("#logradouro").val(""); $("#bairro").val(""); $("#localidade").val(""); $("#uf").val(""); } $("#cep").blur(function() { var cep = $(this).val().replace(/\D/g, ''); if (cep != "") { var validacep = /^[0-9]{8}$/; if(validacep.test(cep)) { $("#logradouro").val("..."); $("#bairro").val("..."); $("#localidade").val("..."); $("#uf").val("..."); $.getJSON("https://viacep.com.br/ws/"+ cep +"/json/?callback=?", function(dados) { if (!("erro" in dados)) { $("#logradouro").val(dados.logradouro); $("#bairro").val(dados.bairro); $("#localidade").val(dados.localidade); $("#uf").val(dados.uf); } else { limpa_formulário_cep(); alert("CEP não encontrado."); } }); } else { limpa_formulário_cep(); alert("Formato de CEP inválido."); } } else { limpa_formulário_cep(); } }); como podem ver era só duplicar e mudar o id, agora neste ja não consigo var inputsCEP = $('#logradouro, #bairro, #localidade, #uf'); var inputsRUA = $('#cep, #bairro'); var validacep = /^[0-9]{8}$/; function limpa_formulário_cep(alerta) { if (alerta !== undefined) { alert(alerta); } inputsCEP.val(''); } function get(url) { $.get(url, function(data) { if (!("erro" in data)) { if (Object.prototype.toString.call(data) === '[object Array]') { var data = data[0]; } $.each(data, function(nome, info) { $('#' + nome).val(nome === 'cep' ? info.replace(/\D/g, '') : info).attr('info', nome === 'cep' ? info.replace(/\D/g, '') : info); }); } else { limpa_formulário_cep("CEP não encontrado."); } }); } // Digitando RUA/CIDADE/UF $('#logradouro, #localidade, #uf').on('blur', function(e) { if ($('#logradouro').val() !== '' && $('#logradouro').val() !== $('#logradouro').attr('info') && $('#localidade').val() !== '' && $('#localidade').val() !== $('#localidade').attr('info') && $('#uf').val() !== '' && $('#uf').val() !== $('#uf').attr('info')) { inputsRUA.val('...'); get('https://viacep.com.br/ws/' + $('#uf').val() + '/' + $('#localidade').val() + '/' + $('#logradouro').val() + '/json/'); } }); // Digitando CEP $('#cep').on('blur', function(e) { var cep = $('#cep').val().replace(/\D/g, ''); if (cep !== "" && validacep.test(cep)) { inputsCEP.val('...'); get('https://viacep.com.br/ws/' + cep + '/json/'); } else { limpa_formulário_cep(cep == "" ? undefined : "Formato de CEP inválido."); } }); desde já agradeço.
  21. gersonab

    Deletar um Post com 90 dias apos a data de cadastro

    utilizo esta $sqldel=$pdo->query("DELETE FROM ipi WHERE dataip < DATE_SUB(NOW(), INTERVAL 90 DAY)");
  22. gersonab

    update select option com dados do banco

    resolvi desta forma, vou deixar aqui a solução que encontrei para ajudar quem precise, pode não ser a ideal, mas deu certo aqui. <label>Comarca </label> <select class="form-control" name="cidag"> <option value="">-- Selecionar --</option> <?php $curc4 = $pdo->query("SELECT * FROM comarca ORDER BY comarc asc"); while ($lic4 = $curc4->fetch(PDO::FETCH_ASSOC)) { $comarc=$lic4['comarc']; if($cidag == $comarc){ $selected = "selected"; } else { $selected = " "; } ?> <option value="<?php echo $comarc;?>" <?php echo $selected;?> ><?php echo $comarc;?></option> <?php } ?> </select>
  23. gersonab

    update select option com dados do banco

    bom dia. estou com um problema aqui, quando vou fazer update de uma página com dados vindos do banco os select option mostra os dados corretamente porém os value capturados não estão corretos, um exemplo, se for de cidades vem no value somente o primeiro nome da cidade enquanto na exibição do nome vem completo, logo, quando faço o update grava somente o primeiro nome, pois esta se dividindo e criando campos. <select class="form-control" name="cidade"> <option value="">-- Selecionar --</option> <?php $curc4 = $pdo->query("SELECT * FROM comarca ORDER BY comarc asc"); while ($lic4 = $curc4->fetch(PDO::FETCH_ASSOC)) { echo "<option value=".$lic4['comarc']." ".($cidade == $lic4['comarc'] ? "selected":"")." >".$lic4['comarc']."</option>"; } ?> </select> como é mostrado no console: <option value="ANGRA" dos="" reis="">ANGRA DOS REIS</option> desde já agradeço ajuda
  24. gersonab

    update select option com dados do banco

    outra forma que eu tentei foi : <option <?php if($cidade == $lic4['comarc']) {echo 'selected'; } ?> value="<?php echo $lic4['comarc']; ?>"><?php echo $lic4['comarc']; ?></option> o select option vem com todos os dados do banco normalmente, porém não vem com o dados setado para edição caso necessário, vem em branco, aí tendo que ser refeito, precisando ou não. nessa situação como exposta no início, se eu trabalhar com o id da tabela comarca, e estiver gravado o id na outra, funciona perfeitamente, mas com nomes não. echo "<option value=".$lic4['idcomarc']." ".($idcidade == $lic4['idcomarc'] ? "selected":"")." >".$lic4['comarc']."</option>"; mas porque com os nomes não consigo ????
  25. gersonab

    update select option com dados do banco

    Ainda não consigo trazer o option selecionado que esta no BD echo "<option value=\"".$lic4['comarc']."\" ".($cidade == $lic4['comarc'] ? "selected":"").">".$lic4['comarc']."</option>"; no log <option value="ANGRA DOS REIS">ANGRA DOS REIS</option>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.