-
Total de itens
1327 -
Registro em
-
Última visita
-
Dias vencidos
15
Tudo que Omar~ postou
-
Simples use float / inline-block / flex em cada item <li>. Quando não houver espaço para caber o elemento ao lado ele quebra para baixo. Defina uma largura por padrão se for necessário, e se também for necessário você pode está alterando com @media essas larguras conforme a resolução. Exemplo: <ul class="list-none"> <li class="line-block box-x-250 bg-red">Item</li> <li class="line-block box-x-250 bg-green">Item</li> <li class="line-block box-x-250 bg-blue">Item</li> </ul> Usos: list-none line-block
-
Vamos lá, você especificar o LIMIT que define quantos resultados por página e o OFFSET que será a partir de qual índice os resultados devem ser mostrados. Mais detalhes leia: https://www.mysqltutorial.org/mysql-limit.aspx Ou seja se você passa o limite de 10 o OFFSET inicial será 1. Na página deve existir um link que informe a aplicação que o usuário mudou de página avançando ou retrocedendo. Exemplo: <a href="./pagina=2">Página 2</a> Ou seja terei um $_GET['pagina'] com o valor 2 então agora o offset passa a ser 10 mostrando resultados a partir do décimo. Agora uma dica, se sua paginação não constar com inúmeros resultados você pode fazer tudo pelo javascript, o que é mais "rápido de ser processado" (depende da quantidade) Um exemplo está nesse script que fiz justamente para usar em paginação cujo os resultados fiquem em torno de 100, mais que isso ou já com isso a página começará apresentar lentidão de carregamento (isso dependendo de como é estruturado seu HTML e como você usa scripts client-side). https://github.com/Spell-Master/sm-web/tree/master/javascript/Paginator Enfim com isso você vai fazer usa leitura do DB normalmente assim como está aí, vai fazer o loop como você mesmo fez aí, e só irá aplicar o script.
- 1 resposta
-
- pagination
- paginação
-
(e mais 1 )
Tags:
-
Como trocar o filtro do select mysql apos um click no checkbox
Omar~ respondeu ao tópico de Jefferson andre em PHP
@Jefferson andre Pelo que eu entendi você está trazendo ambos os resultados em uma query: E ao selecionar um check box o menu suspendo "<select>" deve ser alterado conforme estiver marcado ou não. Em resumo atualizar o seletor...... É meu caro muitos também não fazem a mínima ideia como fazer isso também. Principalmente para quem não sabe nada de javascript. Então no caso para isso ser viável uma vez que você trás os dados em array do php e tem que processar-los no javascript, mais específico nessa situação podemos nos usar o JSON. Pois bem simulei aqui um array de resultados do banco de dados: A primeira coisa é codificar esse array em json para podemos lançar-lo no javascript: <?php $arr = []; foreach ($db as $value) { $arr[] = $value; } $json = json_encode($arr); E assim normalmente podemos ter o html inicial aquele que será composto no carregamento da página. <input type="checkbox" id="filtro" /> <select id="seletor"> <?php foreach ($db as $value) { if ($value['tipo_do_cadastro'] == '1') { // Ao carregar a página só terão usuários tipo 1 ?> <option value ="<?= $value['id'] ?>"><?= $value['razao']; ?> </option> <?php } } ?> </select> Como pode ver tenho um menu suspenso <select> que será modificado quando o "checkbox" é marcado ou não Agora entramos no Javascript que vai fazer a manipulação. Bom fiz o script no esquema de orientação a objeto por ser mais prático de informar dados entre as funções. Mas o segredo mesmo é varrer o array que vamos passar pelo php. Verificar a checagem do checkbox e se ele condiz com o valor 0 ou 1 de acordo com os dados do array. No mais é algo muito simples de se fazer: Então está aqui o javascript necessário, cabe você agora adaptar ou modificar conforme for necessário aí: E para executar criamos o objeto da classe JS e adicionamos um evento ao checkbox chamando o método da classe: <script> var objeto = new myFuntion('<?= $json ?>'); // $json o array do php document.getElementById('filtro').addEventListener('change', objeto.filtro, false); </script> Por fim vale a dica se a coluna que trás o tipo de usuário 1?0 for INTEGER, converta esse valor para STRING pois o numero zero em um condição javascript quer dizer false, e não o número zero. Então por exemplo isso: $this.checkBox.checked && e.tipo_do_cadastro == 0 O objeto tem está marcado e evento tipo deve ser falso para a condição valer. -
Isso depende do contexto que ISSO "this" se refere. Acredito que esteja usando jQuery Só por isso então você perde em performance, jquery nada mais que irá fazer N'coisas antes de acionar o javascript. Imagina a situação: Uma pessoa vai a uma rua onde sabe que mora tal pessoa, antes disso ele pergunta a dezenas de pessoas se aquela pessoa mora alí, se está em casa. Não seria mais rápido e fácil simplesmente tocar a campainha da casa? Por isso a questão do contexto, se this veio do escopo do javascript nativo ele é mais rápido, se this está na cápsula do jQuery é mais lento.
-
Nossa!!! Já está mastigado isso aqui: https://www.w3schools.com/sql/sql_like.asp SELECT coluna_a_para_pesquisar, coluna_b_para_pesquisar FROM nome_da_sua_tabela WHERE coluna_a_para_pesquisar LIKE %O que pesquisar% OR coluna_b_para_pesquisar LIKE %O que pesquisar% Lembrando o operador LIKE faz uma varredura na(s) colunas que contenham por completo ou parcialmente o pattern da pesquisa
-
Recuperar dados do banco e trazer para o formulário
Omar~ respondeu ao tópico de adriano.eurich em PHP
Pela serve-side o que fazemos nada mais é que consultar dados se existem fazemos as coisas acontecerem, lógica básica. Ou seja cada input envia uma informação com essa informação você apresenta/compila o html para o client com cada informação. if (isset(ALGUMA_COISA)) { // Faça algo se existir } O mesmo serve para o javascript, onde cada botão clicado executa uma coisa, com essa questão cada função irá habilitar/desabilitar ou criar/remover. <form method="POST" action="banco_de_dados/create.php" id="formulario"> <input type="text" name="blablabla" id="obter_isso" /> </form> <button onclick="pegarInfo();">Pegar informação do form sem submeter</button> <button onclick="salvarForm();">Submeter o formulário</button> <script> function pegarInfo() { var informacao = document.getElementById('obter_isso').value; // A função acionada foi pegar a informação // Então podemos habilitar ou desabilitar elementos no html if (informacao) { /* * Aqui executaria uma AJAX passando por exemplo um get para o arquivo * : 'diretorio/arquivo.php?info=' + informacao * Ou seja em arquivo.php teremos $_GET['info'] com o valor do input * para fazer a consulta no banco de dados */ } } function salvarForm() { document.getElementById('formulario').submit(); } </script> -
Recuperar dados do banco e trazer para o formulário
Omar~ respondeu ao tópico de adriano.eurich em PHP
Olha amigo você pode fazer de duas maneiras. 1 - Submeter o formulário no mesmo arquivo no caso: action="banco_de_dados/create.php" <<<< Esse aquivo de envio deve ser o mesmo em que está o form. Assim sendo ao pesquisar você irá consultar o valor do input que submeteu que no contexto é value="Pesquisar" Com essa informação você faz a consulta no banco e preenche os values que forem necessários de acordo com as informação. 2 - Usar um sincronização através de "asynchronous javascript and xml (AJAX)" onde cada botão de submeter executa uma determinada função. No caso então de pesquisar você estaria requisitando um arquivo e esse faria a consulta e o mesmo executaria um javascript acrescentando os values necessários aos inputs em questão. Acontece que esse método pode ser falho. Pensando nessa falha precária do AJAX entre outras coisas desenvolvi esse script para ter muita facilidade nesse tipo de operação: https://github.com/Spell-Master/sm-web/tree/master/javascript/AjaxRequest -
JavaScript "parseFloat" para exibir resultado... não quer funcionar
Omar~ respondeu ao tópico de Alberto Nascimento em Javascript
https://pt.wikipedia.org/wiki/Linguagem_server-side https://pt.wikipedia.org/wiki/Linguagem_client-side A versão do PHP não tem nada haver com isso.... -
Como calcular em JavaScript sem precisar atualizar a página ( pode ser através de um botão )
Omar~ respondeu ao tópico de Alberto Nascimento em Javascript
<div id="resultado"></div> <input type="text" id="campo-a" /> <input type="text" id="campo-b" /> <select id="tipo"> <option value="">Selecione o tipo de calculo</option> <option value="subtracao">Subtração</option> <option value="adicao">Adição</option> <option value="multiplicacao">Multiplicação</option> <option value="divicao">Divisão</option> </select> <button onclick="calcular()">Calcular</button> <script> var campoA = document.getElementById('campo-a'), campoB = document.getElementById('campo-b'), resultado = document.getElementById('resultado'), tipo = document.getElementById('tipo'); function calcular() { var valorA = campoA.value, valorB = campoB.value, calculo = tipo.value, calcularA = parseFloat(valorA), calcularB = parseFloat(valorB); if (isNaN(valorA) || isNaN(valorB)) { resultado.innerText = 'Espera aí, isso aqui é uma calculadora! Use somente números'; } switch (calculo) { case 'subtracao': resultado.innerText = calcularA - calcularB; break; case 'adicao': resultado.innerText = calcularA + calcularB; break; case 'multiplicacao': resultado.innerText = calcularA * calcularB; break; case 'divicao': resultado.innerText = calcularA / calcularB; break; default : resultado.innerText = 'Ei!! Selecione que tipo de calculo vai fazer'; break; } } </script> Não testei, apenas escrevi aqui, mas funciona. -
Não consigo passar uma variável global pra fora da função no Javascript
Omar~ respondeu ao tópico de rnicson em Javascript
var count = document.getElementById("lineCount").innerHTML; /* Mas esse elemento "#lineCount" deve existir no DOM */ Lembrando que noComments.split('\n').length; é um integer com a quantidade de itens referentes a quebra de linha de uma instância. Hahah... congratulations é um prototype do objeto BlocklyDialogs -
?? Viajei em pensar no que isso seria útil??? Mas enfim: <div id="social" class="social section"> <li><a href='http://instagram.com'>Facebook</a></li> <li><a href='http://facebook.com'>Facebook</a></li> </div> <script> var social = document.getElementById('social'); var links = social.querySelectorAll('a'); links.forEach(function (e) { e.innerText = null; }); </script>
-
Não consigo passar uma variável global pra fora da função no Javascript
Omar~ respondeu ao tópico de rnicson em Javascript
Mas seu script aí em nenhum momento está criando cookie? Poderia ser mais específico do que etá tentando passar para a função modicar nela e regatar fora? Seria: variavel_global? Ela var foi criada fora da função? Se não ela é um objeto privado da função portanto a função poderia possuir um prototipo para retornar o objeto. Se isso é feito tem certeza que está usando o objeto correto ou o mesmo existe? Exemplo: -
Isso não tem nada haver com o PHP. Isso é client-side e não serve-side. Portanto veja no console do browser para ver onde você está errando. Mas precisamente na função/objeto "I"
- 2 respostas
-
- calcula
- javascript
-
(e mais 2 )
Tags:
-
[RESOLVIDO] COMO SALVAR O NOVO NOME DA IMAGEM ? ( MÉTODO UPLOAD )
Omar~ respondeu ao tópico de Alberto Nascimento em PHP
@Alberto Nascimento Utilize da melhor forma nossa comunidade. Não use títulos de tópicos com letras maiúsculas isso é ofensivo e viola a boas práticas de uso aqui do fórum. Também quando form mencionar uma pessoa não precisa citar tudo aquilo que ele escreveu isso polui demais seu próprio tópico, quando for citar apenas escreva um @ seguindo do nome da pessoa assim como eu fiz. Agora vamos ao seu problema, que acredito eu que você não requereu os arquivos necessários, então preparei um exemplo bem completo aqui, essa é a arquitetura do exemplo - [Pasta raiz] --- index.php --- post.php --- [Pasta class] ------ ImageUpload.php --- [Pasta function] ------ CodigoAleatorio.php index.php class/ImageUpload.php https://github.com/Spell-Master/sm-web/blob/master/exemplos/corte-e-salvamento-de-imagens/ImageUpload.php function/CodigoAleatorio.php post.php- 5 respostas
-
- salvar msql
- upload
-
(e mais 1 )
Tags:
-
Por padrão o apache já está configurado para mostrar erros. Mas por via das dúvidas: <?php error_reporting(E_ALL); ini_set('display_errors', true);
-
[RESOLVIDO] COMO SALVAR O NOVO NOME DA IMAGEM ? ( MÉTODO UPLOAD )
Omar~ respondeu ao tópico de Alberto Nascimento em PHP
Vou começar por isso: Mesmo que o mesmo receba um código PHP sua extensão ".inc" é uma falha gravíssima de segurança pois expõe o código fonte. Acredito eu que esse mesmo arquivo guarda informações do endereço, login e senha do banco de dados.... Pois bem qualquer um pode acessar-lo pelo browser e obter essas informações, assim sendo pode entrar no seu servidor e fazer o que quiser até mesmo remover seu acesso ao mesmo. Dar uma olhada nesse vídeo será bem instrutivo para você Agora nesse ponto: Nunca use o caractere @ pois ele irá ofuscar qualquer erro, inclusive nesse caso, se não enviar a imagem o retorno da condicional é true, ou seja não enviou mas o php irá reconhecer que enviou. Agora sobre o upload da imagem. Não vou reinventar a roda aqui pois já criei uma classe que entrega isso já mastigado: https://github.com/Spell-Master/sm-web/blob/master/exemplos/corte-e-salvamento-de-imagens/ImageUpload.php Então vamos nos concentrar no nome que terá a imagem, para isso vamos usar uma função que irá criar uma string aleatória: <?php function codigoAleatorio($quantidade = null) { $letras = (isset($quantidade) ? (int) $quantidade : 10); $caracteres = '0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVxXyYwWzZ0123456789'; $retorno = ""; $misturar = str_split($caracteres); for ($i = 0; $i < $letras; $i++) { $retorno .= $misturar[array_rand($misturar)]; } return ($retorno); } Beleza então vamos fazer a coisa acontecer Para finalizar: Faça o tratamento desses dados, simplesmente você está jogando em seu banco de dados qualquer coisa que o usuário informar, deixando sua aplicação totalmente vulnerável a sql-injetion. Ou mesmo pode ser um XSS para expor o código fonte de sua aplicação.- 5 respostas
-
- salvar msql
- upload
-
(e mais 1 )
Tags:
-
Dar uma lida nisso: https://www.w3schools.com/sql/sql_like.asp
-
A versão do Xampp que irá fazer o download é a mesma da versão do PHP que irá usar. No caso essa é a ultima versão: https://www.apachefriends.org/xampp-files/7.4.3/xampp-windows-x64-7.4.3-0-VC15-installer.exe Qualquer coisa nesse vídeo mostra a instalação não só o xampp no windows, mas também a ativação de serviços que farão não só o apache quanto o sql iniciar junto ao arranque do sistema operacional
-
Só uma pergunta. Tem certeza que o objeto $PDO está criado e faz parte do arquivo que faz isso? Depure o(s) arquivos em questão desde onde se inicia até onde é executado. Isso me parece que código procedural que possui uma margem de erro enorme na execução. Por outro lado também já tive problemas com wampserve no passado, simplesmente havia versões que faltavam a instalação de diversos drives e extensões. Dê um experimentada o Xampp é bem infinitamente melhor (mas desinstale o wamp primeiro) https://www.apachefriends.org/pt_br/index.html
-
Você tem lá seu formulário com inputs e tal. Ao enviar para o servidor você vai trabalhar com a super global $_POST ou $_GET "depende" Se adicionar um input do tipo file também terá a super global $_FILES, então é só armazenar o arquivo de acordo com as necessidades. Lógico que o mais sensato é criar o formulário para tal situação exemplo: <form action=" ????? " method="post" enctype="multipart/form-data"> Não sei que tipo a mais de informação deseja enviar, mas fique atento pois 90% de casos assim, vejo pessoas querendo enviar informações que já estão no servidor, não sendo necessário o envio muito menos o tratamento em questão de segurança mais complexas. Exemplo dados que podem ser resgatados por sessão.
-
Divirta-se : Introdução a PDO para iniciantes
-
Primeiro que a séculos não se utiliza mais mysql_* Use mysqli_* ou melhor use PDO Agora o problema é simples é porque o usuário que usa para acessar o banco de dados não tem permissão para armazenar dados. Ou seja crie um utilizador que possa fazer manipulações em banco de dados.
-
Esboço é uma coisa o material pronto é outra, mas sim tem que ser capaz de apresentar algo de imediato um cliente vai sempre exigir isso. Seu gosto não importa, um profissional não importa o ramo agrada o cliente e não a sí próprio. Não é querendo te desencorajar, mas deveria ver outros caminhos também em paralelo, você ainda é jovem tem muitas opções na vida ainda, antes de apostar todas as fichas em uma só jogada. Isso não é verdade, longe disso. Ser bom não quer dizer que você irá conseguir um emprego, empregador algum irá ver o seu talento a qualidade do que faz, e sim se você se enquadra nos requisitos que ele procura. Por isso lhe disse para explorar outros meios, porque nada é certeza.
-
Dúvida sobre como enviar data e hora para tabela com PHP
Omar~ respondeu ao tópico de celsomacarini em PHP
Aqui :NOW(), :NOW() Troque por :data, :hora Agora uma questão. Em seu método você aceita dois parâmetros $data ='', $hora ='' Isso é desnecessário portanto nem precisava existir, então aqui: $sql->bindValue(':data', $data); $sql->bindValue(':hora', $hora); Altere para $sql->bindValue(':data', date('Y-m-d')); $sql->bindValue(':hora', date('H:m:s')); Lembrando também que você pode ter uma coluna tipo datetime Ao qual para se registrar data e hora atual seria date('Y-m-d H-m-s'); Vale também ressaltar que isso vai ser definido pelo timezone do servidor. -
site esta mostrando uma mensagem de site hackeado
Omar~ respondeu ao pergunta de juniorerb21 em Perguntas e respostas rápidas
Olha amigo aqui não podemos lhe ajudar em nada, a não ser especular que é isso ou aquilo. Se você restaurou os arquivos/dados do backup e mesmo assim o problema persiste, numa coisa é certa o problema está no domínio/hospedagem. E como não temos acesso a isso fica difícil dar um parecer.