-
Total de itens
161 -
Registro em
-
Última visita
-
Dias vencidos
1
Tudo que AndersonWS postou
-
php Expressão regular para encontrar um termo entre chaves ou colchetes ou parenteses [RESOLVIDO]
AndersonWS postou um tópico no fórum PHP
Olá a todos, preciso de uma ajuda com uma expressão regular. Quase deu certo porém me falta achar todas as partes, creio que seja só um ajuste na minha expressão regular. $string = CONTRATANTE: {{ Nome do Contratante }} , {{ Nacionalidade Contratante }} , {{ Estado Civil Contratante }} , {{ Profissão Contratante }} , Carteira de Identidade nº {{ Identidade Contratante }} , C.P.F. nº {{ CPF Contratante }} , residente e domiciliado na {{ Logradouro Contratante }} , nº {{ Numero Logradouro Contratante }} , bairro {{ Bairro Contratante }} , Cep {{ CEP Contratante }} , Cidade {{ Cidade Contratante }} , no Estado {{ UF Contratante }}"; $arr = $string; $i=1; preg_match_all("#\{{[\w\s']+\}}#i", $arr, $txt); foreach($txt AS $key => $val){ foreach($val AS $k => $v){ echo $i.'- '.$v.'<br/>'; $i++; } } O resultado esperado vem com alguns itens faltando: 1- {{ Nome do Contratante }} {{ Nome do Contratante }} 2- ??? {{ Nacionalidade Contratante }} 3- {{ Estado Civil Contratante }} {{ Estado Civil Contratante }} 4- ??? {{ Profissão Contratante }} 5- {{ Identidade Contratante }} {{ Identidade Contratante }} 6- {{ CPF Contratante }} {{ CPF Contratante }} 7- ??? {{ Logradouro Contratante }} 8- {{ Numero Logradouro Contratante }} {{ Numero Logradouro Contratante }} 9- {{ Bairro Contratante }} {{ Bairro Contratante }} 10- {{ CEP Contratante }} {{ CEP Contratante }} 11- {{ Cidade Contratante }} {{ Cidade Contratante }} 12- ??? {{ UF Contratante }} -
php Expressão regular para encontrar um termo entre chaves ou colchetes ou parenteses [RESOLVIDO]
AndersonWS respondeu ao tópico de AndersonWS em PHP
Descobri o problema: Na verdade não era na expressão regular. Como vinha do banco de dados o problema ocorria pelos caracteres especiais. Pra quem quiser, usei essa função e resolveu: function remove_accentBD($str) { $a = array('á', 'à', 'ã', 'â', 'é', 'ê', 'í', 'ó', 'ô', 'õ', 'ú', 'ü', 'ç', 'Á', 'À', 'Ã', 'Â', 'É', 'Ê', 'Í', 'Ó', 'Ô', 'Õ', 'Ú', 'Ü', 'Ç'); $b = array('a' , 'a' , 'a' , 'a' , 'e' , 'e' , 'i' , 'o', 'o' , 'o' , 'u' , 'u' , 'c' , 'A' , 'A' , 'A' , 'A' , 'E' , 'E' , 'I' , 'O' , 'O' , 'O' , 'U' , 'U' , 'C'); return str_replace($a, $b, $str); } -
Use: echo substr($string, 0, 10); Vai retornar sua string cortando no 10º caractere.
-
Seletor de estado/cidade/bairro no mesmo dropdown select
AndersonWS respondeu ao tópico de AndersonWS em PHP
Consegui fazer mais alguns melhoramentos mas a partir daqui preciso de ajuda pra tornar mais dinâmico. Reparei que é basicamente javascript então se algum moderador achar melhor pode mover o tópico. Segue o script ajustado: <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <style type="text/css"> #est1_municipios,#est2_municipios { display: none; } select, option{ height:35px;width:200px; } </style> <center> <select name='endereco' id="endereco" onchange="mostraEsderecos(this.value)"> <optgroup label="Estados" id="estados"> <option>Selecione um Estado</option> <option value='estado_1'>Estado 1</option> <option value='estado_2'>Estado 2</option> </optgroup> <optgroup label="Cidades" id="est1_municipios"> <option>Selecione uma Cidade</option> <option value='est1_municipio_1'>Estado 1 >> Municipio 1</option> <option value='est1_municipio_2'>Estado 1 >> Municipio 2</option> </optgroup> <optgroup label="Cidades" id="est2_municipios"> <option>Selecione uma Cidade</option> <option value='est2_municipio_1'>Estado 2 >> Municipio 1</option> <option value='est2_municipio_2'>Estado 2 >> Municipio 2</option> </optgroup> </select> <input type="button" value="limpar select" id="limpar"> </center> <script> function mostraEsderecos(valor) { if ((valor === "estado_1")||(valor === "estado_2")) { document.getElementById("estados").style.display = "none"; if (valor === "estado_1") { document.getElementById("est1_municipios").style.display = "block"; document.getElementById("est2_municipios").style.display = "none"; document.getElementById("est1_municipio_1").disabled = true; document.getElementById("est1_municipio_2").disabled = true; document.getElementById("estados").style.display = "none"; } else if (valor === "estado_2") { document.getElementById("est1_municipios").style.display = "none"; document.getElementById("est2_municipios").style.display = "block"; document.getElementById("est2_municipio_1").disabled = false; document.getElementById("est2_municipio_2").disabled = false; document.getElementById("estados").style.display = "none"; } } else { } } jQuery(document).ready(function(){ jQuery('#limpar').click(function(){ document.getElementById("estados").style.display = "block"; document.getElementById("est1_municipios").style.display = "none"; document.getElementById("est2_municipios").style.display = "none"; jQuery('#endereco').prop('selectedIndex',0); }) }); </script>- 2 respostas
-
- javascript
- ajax
-
(e mais 1 )
Tags:
-
Neste site aqui: https://kithomepage.com/estado-cidade-municipio/ tem um dropdown de Estados, cidades, municípios só que ao selecionar estado, abre um novo seletor de cidades e ao selecionar a cidade abre um novo seletor de bairros. Quero saber se seria possível / viável, abrir no mesmo seletor dropdown select. Ao invés de abrir 3 que o Estado, por exemplo, se "transforma-se" em bairros no option ficaria assim: <select name="endereco" id="estados"> <option>São Paulo</option> <option>Rio de Janeiro</option> </select> Após selecionar o estado o mesmo seletor ficaria assim: <select name="endereco" id="municipio"> <option>São Paulo > Campinas</option> <option>São Paulo > Guarulhos</option> </select> E ao selecionar a cidade ficaria assim: <select name="endereco" id="bairros"> <option>São Paulo > Campinas > Parque Prado</option> <option>São Paulo > Campinas > Taquaral</option> </select> Então enviaria o valor do endereço estado/cidade/bairro em um só dropdown select. Podem me ajudar com dicas e falando se é ou não possível e qual o caminho (o que eu deveria procurar) pra fazer isso. Grato.
- 2 respostas
-
- javascript
- ajax
-
(e mais 1 )
Tags:
-
Seletor de estado/cidade/bairro no mesmo dropdown select
AndersonWS respondeu ao tópico de AndersonWS em PHP
Achei este script bem simples e modifiquei mas está bem bruto ainda, pra começar teria que ser mais dinâmico e também ainda falta a seleção dos bairros. Segue o que consegui até agora: <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <style type="text/css"> #est1_municipios,#est2_municipios { display: none; } select, option{ height:35px;width:200px; } </style> <center> <select name='endereco' onchange="mostraEsderecos(this.value)"> <optgroup label="Estados" id="estados"> <option>Selecione um Estado</option> <option value='estado_1'>Estado 1</option> <option value='estado_2'>Estado 2</option> </optgroup> <optgroup label="Cidades" id="est1_municipios"> <option>Selecione uma Cidade</option> <option value='est1_municipio_1'>Estado 1 >> Municipio 1</option> <option value='est1_municipio_2'>Estado 1 >> Municipio 2</option> </optgroup> <optgroup label="Cidades" id="est2_municipios"> <option>Selecione uma Cidade</option> <option value='est2_municipio_1'>Estado 2 >> Municipio 1</option> <option value='est2_municipio_2'>Estado 2 >> Municipio 2</option> </optgroup> </select> </center> <script> function mostraEsderecos(valor) { if (valor === "estado_1") { document.getElementById("estados").style.display = "none"; document.getElementById("est1_municipios").style.display = "block"; document.getElementById("est1_municipio_1").disabled = true; document.getElementById("est1_municipio_2").disabled = true; } else { document.getElementById("estados").style.display = "block"; document.getElementById("est1_municipios_1").style.display = "none"; document.getElementById("est1_municipio_1").disabled = false; document.getElementById("est1_municipio_2").disabled = false; } if (valor === "estado_2") { document.getElementById("estados").style.display = "none"; document.getElementById("est2_municipios").style.display = "block"; document.getElementById("est2_municipio_1").disabled = true; document.getElementById("est2_municipio_2").disabled = true; } else { document.getElementById("estados").style.display = "block"; document.getElementById("est2_municipios_1").style.display = "none"; document.getElementById("est2_municipio_1").disabled = false; document.getElementById("est2_municipio_2").disabled = false; } } </script>- 2 respostas
-
- javascript
- ajax
-
(e mais 1 )
Tags:
-
mysql Tracert com Esgotado o tempo limite do pedido tem algo a ver com otimização do banco de dados?
AndersonWS postou um tópico no fórum MySQL
Meu site está caindo muito nos últimos dias. Basicamente acessa e não aparece nada, uma tela em branco. O pessoal da hospedagem falou que tenho que otimizar o banco de dados e que o problema é esse. Acho estranho pois o mesmo site não caia e agora "do nada" tem esse problema. Fiz um teste de tracert no cmd para ver as rotas e deu a mensagem: Esgotado o tempo limite do pedido. Isso me parece o problema e não o banco de dados. Otimização do banco tem alguma coisa a ver com essa mensagem? Poderia o site por não estar muito otimizado simplesmente não mostrar nada na tela? Não deveria carregar ao menos o html? Se não for o local certo da pergunta me perdoem mas como falaram que o problema era o banco de dados postei aqui. Grato. -
php Classe não faz update no banco de dados quando faço redireciono a página
AndersonWS postou um tópico no fórum PHP
Boa tarde a todos. Criei uma classe para efetuar duas coisas. Primeiro criar a SESSION e também fazer um UPDATE no banco de dados. Estou começando a criar classes então minha sintaxe pode não ser a melhor. A classe funciona certinho, cria a SESSION e faz o UPDATE, porém se eu insiro echo "<script> setTimeout(function(){ window.location='".$location."'; }, 0300); </script>"; daí ela simplesmente cria a SESSION mas ignora o UPDATE no banco. Retirando o código de "location" aí faz o UPDATE. Quero entender qual o erro? Porque o location não deixa fazer o UPDATE ? Segue o código: class Carrinho { // adicionando produtos no carrinho public function addProdutos($id,$location,$link) { $tamanhoCarrinho = isset($_SESSION['cart'])?count($_SESSION['cart']):0; $tamanhoCarrinho = $tamanhoCarrinho+1; $_SESSION['cart'][$tamanhoCarrinho]['indice'] = $tamanhoCarrinho; $_SESSION['cart'][$tamanhoCarrinho]['id'] = (int)$id; foreach($_SESSION['cart'] as $item){ $indice = $item['indice']; foreach($item as $k => $subitem){ if($k == 'id'){ if($subitem == $id){ $sqls = "UPDATE `produtos` SET `carrinho`='1' WHERE `id`='$id'"; $querys = mysqli_query($link, $sqls); } } } } echo "<script> setTimeout(function(){ window.location='".$location."'; }, 0300); </script>"; } } -
javascript Mudar atributo required e disabled conforme input select
AndersonWS postou um tópico no fórum Javascript
Boa tarde, já tentei muitas formas mas não consigo retirar o atributo required. O resultado que eu preciso é, quando retiro o required de um (name="posicao") o outro fica com required e vice-versa e também um aparece e outro some. Segue o código HTML. <select name="posicao" class="form-control option_escolhida" style="display:none" id="2" required="" disabled> <option value="" selected>Selecione</option> <option value="1">Espaco</option> <option value="2">Cursos</option> </select> <select name="posicao" class="form-control option_escolhida" style="display:none" id="4" required="" disabled> <option value="" selected>Selecione</option> <option value="4">Políticas de privacidade</option> </select> <div class="sem_option"><code>Sem posição definida</code></div> <div class="ini_option"><code>Posição inicial</code></div> <div class="main_option" style="display:none"> <input name="apelido" class="form-control apelido" placeholder="Nome do grupo" type="text" required="" disabled> </div> Segue o código javascrpt: $('.select_escolhida').on({change: listChildren}).trigger('change'); function listChildren() { if ( $(this).val() != '' ) { children = $('option').val(); $(".ini_option").show(); $(".option_escolhida").hide(); $(".option_escolhida").attr("disabled", true); $("#" + $(this).val() ).show(); $("#" + $(this).val() ).removeAttr("disabled"); $(".sem_option").hide(); if( ($(this).val() == '1')||($(this).val() == '3') ){ $(".main_option").show(); $(".apelido").removeAttr("disabled"); } else { $(".main_option").hide(); $(".apelido").attr("disabled", true); $(".ini_option").hide(); } } else { $(".sem_option").show(); $(".ini_option").hide(); $(".apelido").hide(); } } -
javascript Mudar atributo required e disabled conforme input select
AndersonWS respondeu ao tópico de AndersonWS em Javascript
Fiz uma alteração e agora ele faz exatamente o que eu quero, ou seja, mostra um (com required) e oculta outro (com disabled no oculto) , porém não consigo tirar o "disabled" quando faço a seleção ele fica com "disabled" em ambos, tanto no oculto quanto no que mostra, segue: <select name="posicao" class="form-control option_escolhida" style="display:none" id="2" required=""> ... </select> <select name="posicao" class="form-control option_escolhida" style="display:none" id="4" required=""> ... </select> $('.select_escolhida').on({change: listChildren}).trigger('change'); function listChildren() { if ( $(this).val() != '' ) { children = $('option').val(); $(".ini_option").show(); $(".option_escolhida").hide(); $("#" + $(this).val() ).show(); $(".sem_option").hide(); if( ($(this).val() == '1')||($(this).val() == '3') ){ $(".apelido").removeAttr("disabled"); $("#" + $(this).val() ).removeAttr("disabled"); } else { $(".ini_option").hide(); $(".apelido").attr("disabled", true); $("#" + $(this).val() ).attr("disabled", true); } } else { $(".sem_option").show(); $(".ini_option").hide(); } } -
mysql Consultar todos os registros modificados entre a data atual e no máximo 30 dias atrás (type datetime)
AndersonWS postou um tópico no fórum MySQL
Pessoal achei muitos exemplos na internet do que eu quero porém somente com type date ou timestamp. Tenho uma tabela onde tenho uma coluna 'altera' (type datetime), ou seja, ' 2020-05-06 11:00:00' Preciso que minha consulta retorne todos os itens que estiverem entre a data de hoje (type datetime) e até 30 dias anteriores a data atual. Tentei varias formas, imagino que seja algo assim: SELECT * FROM `tabela` WHERE `altera` <= (NOW() - 30 days) ORDER BY `altera` DESC -
Preencher dinamicamente segundo combobox de acordo com o primeiro (com busca sql)
AndersonWS postou um tópico no fórum PHP
Tenho um código que aparentemente estaria certo porém ele "trava" e não mostra os resultados. Creio que o problema está na parte de "buscar" o json apenas. Segue o código: <style>.carregando{color:#666;display:none;}</style> <div class="col-md-7"> <label for="empreendimento">Escolha o empreendimento</label> <select name="empreendimento" class="form-control" required="" id="empreendimento"> <option value="">-- Escolha um empreendimento --</option> <?php $sqlVs = "SELECT `id`,`nm` FROM `empreend` WHERE `dis`='1' ORDER BY `nm` ASC"; $queryVs = mysqli_query($link, $sqlVs); $total = mysqli_num_rows($queryVs); if ($total > 0){ while($r = mysqli_fetch_array($queryVs)){ $id = $r['id']; $nm = $r['nm']; echo '<option value="'.$id.'">'.$nm.'</option>'; } } else { echo '<option value="0">Não há empreendimentos disponíveis</option>'; } ?> </select> </div> <div class="col-md-5"> <label for="unidades">Unidade</label> <span class="carregando">Aguarde, carregando...</span> <select name="unidades" id="unidades" class="form-control" required=""> <option value="">-- Escolha uma unidade --</option> </select> </div> <script src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load('jquery', '1.3'); </script> <script type="text/javascript"> $(function(){ $('#empreendimento').change(function(){ if( $(this).val() ) { $('#unidades').hide(); $('.carregando').show(); $.getJSON('ajax/busca_emp.php?search=',{empreendimento: $(this).val(), ajax: 'true'}, function(j){ var options = '<option value=""></option>'; for (var i = 0; i < j.length; i++) { options += '<option value="' + j[i].id + '">' + j[i].nm + '</option>'; } $('#unidades').html(options).show(); $('.carregando').hide(); }); } else { $('#unidades').html('<option value="">– Escolha um empreendimento –</option>'); } }); }); </script> if(!empty($_GET["search"])) { $empreendimento = trim($_GET["search"]); $empreendimento = mysqli_real_escape_string($link, $empreendimento); $unidades = array(); $sqlVs = "SELECT `id`,`nm` FROM `empreendimento` WHERE `id`='$empreendimento' ORDER BY `nm` ASC"; $queryVs = mysqli_query($link, $sqlVs); $total = mysqli_num_rows($queryVs); if ($total > 0){ while($r = mysqli_fetch_array($queryVs)){ $unidades[] = array( 'id' => $r['id'], 'nm' => $r['nm'], ); } } echo( json_encode( $unidades ) ); } else { echo 'vazio'; } Ele trava e fica apenas mostrando: Aguarde, carregando... Olhei o json e ele está recuperando: [{"id":"1","nm":"Condominio"}]- 1 resposta
-
- javascript
- mysql
-
(e mais 1 )
Tags:
-
Preencher dinamicamente segundo combobox de acordo com o primeiro (com busca sql)
AndersonWS respondeu ao tópico de AndersonWS em PHP
Pessoal, consegui eu mesmo resolver, quebrei a cabeça um pouco mas resolvi. Não sei se é a melhor solução, se alguém quiser melhorar posta ai. E podem marcar como resolvido. $(function(){ $('#empreendimento').change(function(){ var val = $(this).val(); if( val ) { $('#unidades').hide(); $('.carregando').show(); $.getJSON( 'ajax/busca_emp.php?search='+val, function(j){ var options = '<option value="">-- Escolha uma unidade --</option>'; for (var i = 0; i < j.length; i++) { options += '<option value="' + j[i].id + '">' + j[i].desc + '</option>'; } $('#unidades').html(options).show(); $('.carregando').hide(); }); } else { $('#unidades').html('<option value="">– Escolha um empreendimento –</option>'); } }); });- 1 resposta
-
- javascript
- mysql
-
(e mais 1 )
Tags: