-
Total de itens
446 -
Registro em
-
Última visita
-
Dias vencidos
3
Tudo que Guilherme Luiz postou
-
Batendo o olho vejo que sua Query está errada. Me parece que ela era uma query de UPDATE e você simplesmente mudou o update para INSERT o $id $md5 não te resultam em nada porque sua query está errada e dado a isso ela gera um erro e o registro não é adicionado. Logo, sua variavel $md5 não tem o valor de $id para poder fazer o hash aplique sempre um bloco de if() ou try/catch quando executar $sql->query() para poder tratar possiveis erros de query. Veja: https://www.w3schools.com/php/php_mysql_insert.asp
-
Da uma olhada https://www.php.net/manual/pt_BR/function.substr.php $texto = "Este aqui é um texto muito longo que quero apresentar somente os 20 primeiros caracteres"; echo substr($texto, 0, 20);
-
Pq usa-se bindValue ao invés de usar a variável direto na instrução sql
Guilherme Luiz respondeu ao tópico de junior3d em PHP
O que aprendi ha muitos anos quando comecei a trabalhar com o PHP que respondeu essa e a varias outras perguntas: Nunca confie em input recebidos Em outras palavra... sempre cheque e valide tudo que você receba a partir de input principalmente quando se tratar de queries em bancos de dados. -
O ideal para trabalhar com datas em banco de dados é sempre salvar em UTC e formatar a data no momento da visualização.
-
Como chamar procedure via PHP recebendo parametros de formulário html
Guilherme Luiz respondeu ao tópico de AndersonVSilva em PHP
O seu HTML está fechando a tag </form> antes de todos os inputs. coloque a tag <form> fora das tags de <table> por exemplo: <form action="postar.php" method="post"> <table> <tr> <td> <input type="text" name="meuinput"> </td> </tr> <tr> <td> <button type="submit">Enviar</button> </td> </tr> </table> </form> Para que os campos sejam passados em POST ao script dados em ACTION é preciso que todos estejam dentro da tag <form> -
Qual a parte do problema? Onde está o código que pega os dados desse formulário e tenta atualizar o sql? Nos ajude a te ajudar rs
-
Você pode passar como parametro da function ou usar via closure/anonima dependendo da sua necessidade $corAtual = "azul"; function cores($cor) { return $cor; } echo cores($corAtual); ou então via closure/anonima: $corAtual = "azul"; $cores = function() use ($corAtual){ return $corAtual; }; echo $cores(); Recomendo a leitura: https://www.php.net/manual/pt_BR/language.functions.php
-
Precisaria de algumas regras de htaccess basicamente. Veja esse tópico que pode ajudar: https://stackoverflow.com/questions/812571/how-to-create-friendly-url-in-php No forum se você buscar por url amigaveis com ctz terão outros posts com exemplos já prontos
-
Eu deixaria pra checar inputs no backend ao inves do JS. Cria um objeto com seus keys sendo cada um dos inputs do usuario por exemplo var filtro = { busca: $("#box-de-pesquisa").val(), quatros: $("#quartos").val(), bairro: $("#bairro").val() } Pelo Ajax você manda todo o objeto filtro: var dados = filtro $.post('buscador.php', dados, function(response.... No PHP você conseguiria acessar os dados do POST mais ou menos assim $busca = ((is_null($_POST['filtro']['busca'])) ? false : "and temos_de_busca = '{$_POST['filtro']['busca']'}"); $quartos = ((is_null($_POST['filtro']['quartos'])) ? false : "and quartos = '{$_POST['filtro']['quartos']'}"); ... E dai então você montaria a sua query mais ou menos assim $query = "SELECT * FROM imobiliaria WHERE {$busca} {$quartos}"; Assim você fará a sua query buscar por vários campos caso eles não venham como NULL do POST feito pelo AJAX OBS.: Não cuidei exatamente da tipagem e verificações porque a intenção era dar uma luz de como você consegue atingir o resultado
- 1 resposta
-
- javascript
- php
-
(e mais 1 )
Tags:
-
veja se ajuda: https://stackoverflow.com/questions/11764156/send-file-attachment-from-form-using-phpmailer-and-php
-
Você pode aplicar um regex para capturar apenas os números <?php $string = "aquiVaiQualquerCoisa650000.12345"; $sonumeros = preg_replace("/\D/","",$string); #\d/ regex para manter somente números echo $sonumeros; #resultado > 65000012345 ?>
-
Se a questão é ficar com o foreach desacoplado do html você pode colocar os options num array e então "implodar" eles dentro do select <?php $data = ["um","dois","tres","quatro"]; $options = []; foreach($data as $val){ $options[] = "<option value='{$val}'>{$val}</option>"; } ?> <html> <select> <?php $option = implode(",",$options); echo $option; ?> </select> </html>
-
Olá pessoal, Estou com uma pequena dúvida em relação a buscar dados em json no MySQL. No meu banco eu tenho uma table com o seguinte campo em json. table - contacts column - groups_id Na coluna groups_id eu armazeno ids de grupos em json por exemplo: ["252","222","666"] Quando eu realizo a seguinte query SELECT * FROM user_contacts WHERE JSON_CONTAINS(group_id, '["252"]') Beleza... Ele me resulta em todos os contatos que possuem o registro 252. O que acontece é que essa table é 1 > N, ou seja, um contato pode fazer parte de vários grupos, sendo assim: quando eu consulto SELECT * FROM user_contacts WHERE JSON_CONTAINS(group_id, '["252","222"]') Ele não me resulta nos contatos que estão com grupo 252 ou 222. Ele me resulta nos contatos que estão com o grupo 252 e 222, ou seja, ele me retorna somente os contatos que o group id tenha ["252","222"] Eu vi que nessa situação eu poderia criar um INDEX na minha tabela usando: ALTER TABLE user_contacts ADD INDEX groups ( (CAST(group_id->'$.groups' AS UNSIGNED ARRAY)) ); Mas o CAST() na versão que Mysqli que eu possuo no servidor 4.6.X me retorna Syntax error. Alguem teria uma sugestão ou luz de qual caminho posso seguir nessa situação sem que seja atualizando a versão do bd?
- 2 respostas
-
- json_search
- json
-
(e mais 1 )
Tags:
-
Pessoal, Agora sim consegui usando um pouco de regex antes de passar os parametros na query: $ids = []; foreach($data['ids'] as $id){ $ids[] = "([[:<:]]|^)".$id."([[:>:]]|$)"; } $ids = implode("|",$ids); $query = "SELECT * FROM user_contacts WHERE JSON_EXTRACT(group_id, '$') REGEXP '{$ids}'"; $sql = mysqli_query($connect_sql, $query); Se alguém tiver alguma outra forma de fazer o mesmo... Por favor, me de essa luz rs Abraço
- 2 respostas
-
- json_search
- json
-
(e mais 1 )
Tags:
-
[ RESOLVIDO ] Como utilizar dois critérios ao invés de uma para exibir lista ?
Guilherme Luiz respondeu ao tópico de Alberto Nascimento em PHP
Depende do seu cenário e do tipo de critério. Mas basicamente você pode usar o WHERE column IN ('criterio 1','criterio 2') $rst_pedidos=mysql_query("SELECT * FROM pedidos WHERE situacaopedido IN ('ENVIADO','PENDENTE','REPOSTADO') ORDER BY situacaopedido",$link); -
Pessoal, Já consegui "resolver" a minha query com a seguinte consulta: SELECT * FROM user_contacts WHERE JSON_EXTRACT(group_id, '$') REGEXP '227|222' Dessa forma ele me resulta em todos os contatos que tenham um e outro ou somente um. Entretanto se eu buscar por um registro que contenha somente o número 2, ele me resulta em todos os registros com 2. De toda forma essa é a maneira que encontrei no momento. Se alguém tiver alguma outra forma de fazer o mesmo... Por favor, me de essa luz rs Vlw pessoal
- 2 respostas
-
- json_search
- json
-
(e mais 1 )
Tags:
-
Qual a melhor estrutura para um sistema administrativo e o site
Guilherme Luiz respondeu ao tópico de jribeirojr em PHP
Hoje minhas aplicações são em PHP + AngularJS E nela sempre faço a API interna por PHP que recebe parametros em GET/POST/DELETE e os consumo com o AngularJS via $resource. A divisão faço exatamente como o @ExtremsX o recomendou que é a separação tanto dos views quanto dos controllers, etc por modulos Angular - /Controllers - /filters - /directives - /factories PHP - /API ----- /modulo 1 ----- /submodulo 1 ----- /modulo 2 ----- /submodulo 1 ----- /submodulo 2 Isso eu aplico tanto na hierarquia de pastas quanto de endpoints da api a serem consumidos, mas nesse caso não uso dominio para consumo, mas sim um routing interno que acredito que seja mais seguro. E isso se aplica perfeitamente a React também e o react tem a "vantagem" de com poucas alterações você consegue aproveitar o código no React Native para aplicações mobile. -
Quanto cobrar mensalmente por upgrade + atendimento telefonico + atendimento on line
Guilherme Luiz respondeu ao tópico de Jefferson andre em PHP
Eu sou da seguinte opinião: Se você copiar de 1 é plagio. Se você copiar de vários é "inspiração" O que quero dizer com isso é que você poderia pesquisar diversas empresas que tem o mesmo produto que o seu e ver os modelos de pacotes e preços que eles cobram e adequar a sua realidade. Qual o maior canal de utilização do suporte? Por email? Por telefone? Por visita tecnica? Tempo médio de um suporte 1 hora? 2 horas? Como a sua equipe está treinada? Infelizmente existem momentos que temos que deixar certos clientes no "Vacuo" para atender outros que são prioritários. As vezes a equipe de suporte está treinada a ser super atenciosa com todos sem nenhum tipo de filtro e isso impacta no fluxo de atendimento. Como seus clientes foram "educados"? Pergunto isso porque existem clientes que vão ligar ou pedir suporte para perguntar se o seu sistema aceita arquivos PDF ou TXT enquanto que toda essa informação está facilitada na tela do sistema e o usuário simplesmente não leu. Se isso não for cortado, sempre irá acontecer Materiais de apoio, existem? Para sistemas é sempre ideal ter um manual escrito, vídeo instrutivo por módulos ou treinamento na implementação... Se você não tiver isso, com certeza você terá demandas por suporte de coisas simples. Sei que você busca rentabilizar mais sem perder clientes e com certeza se houver um material de apoio e um treinamento correto essa demanda poderá reduzir e você usar o atendimento como diferencial e não como um serviço a mais. Mas se a ideia é sempre cobrar por esse suporte eu recomendo você antes considerar esses itens que comentei e com isso você certamente terá a ideia de qual preço aplicar porque se você não tiver essa noção, ao cobrar que sejam R$ 2,00 a mais você poderá estar cobrando muito barato ou muito caro. -
Numeração de protocolo sequencial
Guilherme Luiz respondeu ao tópico de Moacir Guilherme Filho em PHP
De forma bem simplista eu pensaria em algo mais ou menos assim: <?php #código a ser utilizado antes de aidcionar o novo ticket de atendimento $sql = "SELECT atendimento FROM tabela WHERE id DESC limit 1..."; #aqui executo a query e pego o registro do atendimento via mysqli_fetch_assoc e então crio a funçãop $novoTicket = criarTicket($data['atendimento']); function criarTicket($ultimoTicket){ $ticket = explode("/",$ultimoTicket); #separo o num. do ticket com o ano em array $sequenciaTicket = $ticket[0]; #gravo na variavel o num. do ticket $anoTicket = $ticket[1]; #gravo na variavel o ano do ticket $anoAtual = date('Y'); #pego o ano atual /** * Aqui faço a verificação se o anoTicket é igual ao anoAtual, se for checo numero sequencial se não defino ticket como 1 * Se for eu faço uma segunda condição para ver se a sequenciaTicket é maior que zero * Se for maior que zero, somo o ticket atual + 1, caso seja menor então iniciamos a contagem em 1 **/ if($anoTicket == $anoAtual){ if($sequenciaTicket > 0){ $novoTicket = $sequenciaTicket + 1; } else { $novoTicket = 1; } } else { $novoTicket = 1; } return $novoTicket; } -
Ajuda, Update de Legenda em upload de multiplas fotos?
Guilherme Luiz respondeu ao tópico de Hugo Lima em PHP
Vamos la... Porque não está alterando. $sql = "UPDATE tb_fotos_portfolio SET legenda=:legenda WHERE id='{$id}' and legenda='{$_POST['legenda'][$k]}'" Veja o WHERE... Nele está sendo explicito que é para atualizar a legenda onde (where) o registro em tb_fotos_portfolio seja igual a um ID e a uma Legenda. Escrevi um exemplo errado (inclusive está gritante o meu erro) e você deu CTRL + C e V e ta a 3 dias sem resolver, com certeza quebrando a cabeça pelo google rs O que você precisa fazer é atualizar a legenda WHERE (onde) o id da foto é correspondente Outra coisa é que sua execução do MySQL está misturada entre estruturada e PDO. Vale a referencia https://www.php.net/manual/pt_BR/pdostatement.execute.php -
Porque você da dois echo window.open? Essa API do whatsapp se você for por em loop 20 mensagens distintas, significara 20 aberturas de janelas. O que recomendo ser feito é você por todo o conteúdo numa mensagem unica e então consumir a API
-
Ajuda, Update de Legenda em upload de multiplas fotos?
Guilherme Luiz respondeu ao tópico de Hugo Lima em PHP
Você fez a alteração no HTML? Aplique um var_dump em $_POST['legenda'] e $_POST['ids'] para ver que resultados ele tras... -
/* * inicio os arrays fora do loop para salvar valores */ $qtC = []; $vatual = []; while($dadosd = mysqli_fetch_array($resultadod)){ /* * Dentro do while armazeno os resultados nos arrays */ $qtC[] = $dadosd["qtC"]; $vatual[] = "https://api.hgbrasil.com/finance/stock_price?key=$chave&symbol=$acao["acao"]"; } /* * Somo todos os valores de cada um dos arrays */ $totalqtC = array_sum($qtC); $totalvatual = array_sum($vatual); /* * Multiplico os valores somados e então os imprimo */ $totalfinal = ($totalqtC * $totalvatual) echo $totalfinal; Isso seria basicamente o que você demonstra que procura supondo que para cada resultado do while o $vatual seja diferente baseado na sua ação. Sempre que você precisar salvar dados em array dentro de um loop, inicie a variavel fora do loop como array e então a aplique dentro do loop para que cada iteração seja armazenada numa chave do array.
-
retirar aspas e colchetes vindos de um select no banco de dados (dependente id)
Guilherme Luiz respondeu ao tópico de Jonas_Britto em PHP
A coluna DEPENDENTES aparentemente foi salva como JSON no banco de dados e por isso você tem que dar um JSON_DECODE nesse campo na hora do fetch dessa coluna... Algo mais ou menos assim: $dependentes = json_decode($fetch['dependentes'], true); Dessa forma o output é um array que você poderá dar um foreach ou então acessar pelo key- 2 respostas
-
- retirar aspas
- retirar colchetes
- (e mais 1 )
-
A partir dessa API publica não é possivel Você precisará da API Oficial do aplicativo que é fornecida por brokers de mensageria homologados pelos Facebook ou então buscar APIs de terceiros não oficiais... Da uma olhada no github que existem vários repositórios