Jump to content

Omar~

Members
  • Content count

    707
  • Joined

  • Last visited

  • Days Won

    15

Everything posted by Omar~

  1. Omar~

    Cadastrar novos produtos.

    Faça leitura via back-end de um local de armazenamento, se existirem dados exiba eles.. Isso vai depender do back-end.... No caso esse fórum usa php, mysqli, e sql. No caso usar PDO é bem melhor do que mysqli. Nesse tópico mostrei um basicão e como utilizar PDO: https://forum.imasters.com.br/topic/565800-crud-introdução-a-pdo/ Nele mesmo temos um simples exemplo de inserir dados, também ler e ser exitem dados exibir-los. No mais você deve se aprofundar nos conceitos pois o guia é voltado para primeiro passo nesses quesitos, e jamais deve ser usados de tal forma em uma aplicação final.
  2. Omar~

    Gerador de texto

    Uai segue o mesmo conceito.... <button onclick="escrever('meu texto')"></button> <input id="aqui" /> <!-- caso não seja um input <div id="aqui"></div> --> <script> function escrever(parametro) { if (parametro) { document.getElementById('aqui').value = parametro; /* //caso não seja um input document.getElementById('aqui').innerText = parametro; */ } } </script>
  3. Omar~

    [Iniciante] Botão de Like

    Isso pode gerar uma quantidade enorme de SPAN.... Pode usar COOKIES para isso. Não existe forma precisa de regatar o IP, porque depende do servidor de acesso e não necessariamente o IP da máquina. Aí que está o problema pois é necessário back-end para tal ação.
  4. Omar~

    Problema com caracteres especiais - Outlook

    Certo... Reveja a codificação geral do seu projeto (Arquivos e cabeçalhos). Os arquivos devem está na codificação UTF-8 sem BOM. O charset deve ser UTF-8. Reveja a codificação da forma que os dados são criados. Exemplo: utf8_encode('Olá mundo'); Se os arquivos e cabeçalhos estiverem corretamente em uft-8 o encode se torna desnecessário. Outra forma é usar entidades html ao invés de codificação. htmlentities('Olá mundo');
  5. Omar~

    Integração com API SICOOB

    Usar nunca usei, mas acredito que as informações que você procura podem ser obtidas aqui: https://api.boletosimples.com.br/bank_contracts/sicoob/
  6. Omar~

    Logica para um sistema de mensagens em php e mysql

    Para deixar algo mais claro vamos de um exemplo (isso seria minha arquitetura você pode fazer conforme suas necessidades): Tabela CREATE TABLE `notificar` ( `status` ENUM('nova','antiga'), `usuario` int(9), `titulo` varchar(100) NOT NULL DEFAULT '', `dia` date NOT NULL, `mensagem` text ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; Em status temos a condicional nova e antiga. Toda vez que uma notificação é inserida ela vai como nova, então se o usuário a ver alteramos esse valor para antiga. Em usuario registramos o id da conta daquele usuário para que possamos fazer a consulta e somente ele receba sua notificação. Em titulo poderemos dar um título a notificação exemplo "Você tem uma notificação em blablabla" Em dia poderemos registrar a data que a notificação foi lançada. Em mensagem transcrevemos o conteúdo. Então para que somente o usuário específico receba suas notificações fazemos a consulta. "SELECT * FROM notificar WHERE usuario = '{$ID_DO_USUARIO}'" Esse $ID_DO_USUARIO pode ser uma cessão que o identifique.
  7. Omar~

    Logica para um sistema de mensagens em php e mysql

    A lógica é simples cara... Bem, você terá uma tabela para armazenar essa notificação. Enviou mensagem, salva o registro na tabela de notificação. Em sua estrutura HTML você terá um local onde a consulta de notificação será feita, se tem alguma registro você indica da forma que achar melhor. Agora poder notificar em tempo real é um pouco mais complexo, mas simples pois estaremos fazendo a mesma coisa só iremos depender de javascript. De fato nunca mexi com esse lance de notificação em tempo real, mas está em meus planos implementar em meu website e o caminho a segui é só ler isso: https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API https://developer.mozilla.org/pt-BR/docs/Web/API/notificacoes
  8. Omar~

    PDO Exception não trabalha

    O melhor caminho seria corrigir qualquer erro. Mas você pode Ofuscar o erros do servidor (Não aconselho)... Porém só faça isso na aplicação final, pois enquanto estiver em produção os erros são vitais a aparecerem, se não aparecem não há como concerta-los.
  9. @Jack Oliveira Sua solução: https://github.com/Spell-Master/sm-web/tree/master/javascript/AjaxRequest
  10. Omar~

    Erro de cadastro - PDOStatement->execute()

    Está faltando dar bind em token Obs.:: Use password_hash ao invés de md5
  11. Omar~

    Gerador de Senhas

    function gerarSenha() { var i = 0, p = '', t = Date.now(); while (i != 42) { i++; p += Math.floor(Math.random() * 10); } p += t; return(p); } O resultado será um número de 55 dígitos aleatórios onde é impossível se repetir, pois seus últimos 14 dígitos é determinado pelo ano, mês, dia, hora, minuto, segundo, décimo e milésimo. Porém prefiro fazer coisas desse jeito em linguagem de servidor, pois o javascript que faz é a própria máquina do usuário.
  12. Omar~

    Problema com caracteres especiais - Outlook

    Acredito que seja sua codificação ANSI. Tente usar UTF-8. No entanto a questão de codificação abrange muito mais do que isso. E sim usar o PHPMailer é bem melhor.
  13. Omar~

    Máscara e verificação de CPF válido

    Normalmente em aplicações quando precisamos validar CPF, também precisamos além de pessoas físicas validar pessoas jurídicas então preparei esse exemplo tanto para verificação de CPF quando para CNPJ. Note que teremos 2 tipos de filtros... Um usando expressão regular, o que obriga a pessoa ter que digitar o campo de forma correta. Do contrário o formulário não pode ser submetido. Um usando script, que vai limpando qualquer caractere que não se enquadre no que é permitido. Fica a seu critério o que usar ou cominar os dois. Também a validação do lado do servidor, que é extremamente necessária pois tanto HTML como JS podem ser manipulados pelo usuário. <form method="POST"> <p>Usando expressão regular</p> <input type="text" name="expressao" minlength="14" maxlength="18" pattern="([0-9]{2}[\.]?[0-9]{3}[\.]?[0-9]{3}[\/]?[0-9]{4}[-]?[0-9]{2})|([0-9]{3}[\.]?[0-9]{3}[\.]?[0-9]{3}[-]?[0-9]{2})" /> <p>Usando script</p> <input type="text" name="script" minlength="14" maxlength="18" onkeypress="mask(this, cpfCnpj)" onblur="clearTimeout()" /> <hr /> <button>Executar</button> </form> <?php if (isset($_POST) && count($_POST)) { require_once(__DIR__ . DIRECTORY_SEPARATOR . 'StrValid.php'); $valido = new StrValid(); if ($valido->checkCpfCnpj($_POST['expressao'])) { echo("<p>O post expressao é um CPF ou CNPJ válido</p>"); } if ($valido->checkCpfCnpj($_POST['script'])) { echo("<p>O post expressao é um CPF ou CNPJ válido</p>"); } echo("<pre>"); var_dump($_POST); echo("</pre>"); } ?> <script> function mask(o, f) { v_obj = o; v_fun = f; setTimeout('obMask()', 1); } function obMask() { v_obj.value = v_fun(v_obj.value); } function cpfCnpj(v) { v = v.replace(/\D/g, ''); //Remove tudo o que não é dígito if (v.length <= 13) { //CPF v = v.replace(/(\d{3})(\d)/, '$1.$2'); //Coloca um ponto entre o terceiro e o quarto dígitos v = v.replace(/(\d{3})(\d)/, '$1.$2'); //Coloca um ponto entre o terceiro e o quarto dígitos de novo (para o segundo bloco de números) v = v.replace(/(\d{3})(\d{1,2})$/, '$1-$2'); //Coloca um hífen entre o terceiro e o quarto dígitos } else { //CNPJ v = v.replace(/^(\d{2})(\d)/, '$1.$2'); //Coloca ponto entre o segundo e o terceiro dígitos v = v.replace(/^(\d{2})\.(\d{3})(\d)/, '$1.$2.$3'); //Coloca ponto entre o quinto e o sexto dígitos v = v.replace(/\.(\d{3})(\d)/, '.$1/$2'); //Coloca uma barra entre o oitavo e o nono dígitos v = v.replace(/(\d{4})(\d)/, '$1-$2'); //Coloca um hífen depois do bloco de quatro dígitos } return v; } </script> Classe StrValid <?php /** * ******************************************** * * @class StrValid * * @copyright (c) Spell master * * @version 2.1 * * @see Classe para verificação de string * ******************************************** */ class StrValid { /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos "Não acentuados * e sem espaços" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function strCheck($subject) { if (preg_match('/^([a-zA-Z]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres numéricos * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function intCheck($subject) { if (preg_match('/^([0-9]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos "Incluíndo * acentos" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function strAccent($subject) { if (preg_match('/^([a-zA-ZÀ-ú]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos "Incluíndo * espaços" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function StrSpace($subject) { if (preg_match('/^([a-zA-Z ]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres numéricos "com ou sem * espaços" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function intSpace($subject) { if (preg_match('/^([0-9 ]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos ou numéricos * "sem espaços ou acentos" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function strInt($subject) { if (preg_match('/^([a-zA-Z0-9]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos ou numéricos * "incluíndo espaços ou acentos" * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function strIntSpace($subject) { if (preg_match('/^([a-zA-Z À-ú 0-9]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres alfabéticos "Incluíndo * acentos ou espaços" * - Tipo de verificação padrão para nomes * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function nameCheck($subject) { if (preg_match('/^([a-zA-Z À-ú]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres para uma url válida * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * @example : * - https://url/?entrada_get=algum-valor * Retorna true por ser válido * - /algumacoisa * Retorna true por ser válido * **************************************** */ public function urlCheck($subject) { if (preg_match('/^([a-zA-Z0-9-_:\/?&=%]+)$/i', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string possui somente * caracteres válidos para um endereço de * e-mail. * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function mailCheck($subject) { if (preg_match('/^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{3})$/', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string é um tipo de * telefone válido. * @example : * - +55 (99) 99999-9999 * - 99 99999-8888 * - 9999-9999 * - 9999999999999 * Ambos números são válidos. * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function checkPhone($subject) { if (preg_match('/^(?:(?:\+|00)?(55)\s?)?(?:\(?([1-9][0-9])\)?\s?)?(?:((?:9\d|[2-9])\d{3})\-?(\d{4}))$/', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string é um tipo de * CPF válido. * @example : * - 000.000000-00 * CPF é válido. * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function checkCpf($subject) { if (preg_match('/^([0-9]{3}[\.][0-9]{3}[\.][0-9]{3}[-][0-9]{2})$/', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string é um tipo de * CNPJ válido. * @example : * - 00.000.000/0000-00 * CNPJ é válido. * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function checkCnpj($subject) { if (preg_match('/^([0-9]{2}[\.][0-9]{3}[\.][0-9]{3}[\/][0-9]{4}[-][0-9]{2})$/', $subject)) { return (true); } } /** * **************************************** * Verificar se uma string é um tipo de * CPF ou CNPJ válido. * @example : * - 000.000000-00 * - 00000000000 * CPF é válido. * * - 00.000.000/0000-00 * - 00000000000000 * CNPJ é válido. * **************************************** * @param {string} $subject * Entrada para verificação * @return {true} (A string é valida) * **************************************** */ public function checkCpfCnpj($subject) { if (preg_match('/^([0-9]{3}[\.]?[0-9]{3}[\.]?[0-9]{3}[-]?[0-9]{2})|([0-9]{2}[\.]?[0-9]{3}[\.]?[0-9]{3}[\/]?[0-9]{4}[-]?[0-9]{2})$/', $subject)) { return (true); } } }
  14. Nesse caso você pode usar ajax, mas é necessário autorização do endereço para seu servidor tenha tal acesso. Mais informação em: https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Headers/Access-Control-Allow-Origin
  15. Omar~

    Help transferencia

    Qual a linguagem back-end? Em todo caso não vejo anomalia alguma, uma vez que são usuários distintos, logo a soma é o correto a acontecer. É possível prever... Como...? Supondo que seja em um submit, logo eu seja o usuário-A e vejo que usuário-B possui o saldo de 10. Ao submeter o formulário basta que a informação do saldo atual seja enviado junto a quantidade de saldo que vou anexar. Então basta que compare se o saldo atual enviado é do mesmo valor que o saldo que visualizei. Assim sendo vejo que usuário-B tem o saldo de 10 e envio 50 para ele, se o saldo atual dele não for 10 é porque foi alterado. No caso de uso em banco de dados SQL mesmo, existe um delay de micro segundos para registros serem manipulados, sendo impossível que 2 registros aconteça naquela exata fração de segundo.
  16. Omar~

    ajuda com um formulario

    https://forum.imasters.com.br/topic/584635-input-restrito-a-números-com-caracteres-limitados/
  17. <!-- Usando expressão regular --> <input type="text" pattern="([0-9]+)" maxlength="15" /> <!-- Com uso de máscara --> <input type="text" maxlength="15" onkeypress="mascara(this, inteiro)" onblur="clearTimeout()" /> <script> var input, tecla; function mascara(i, t) { window.input = i; window.tecla = t; setTimeout('chave()', 1); } function chave() { window.input.value = window.tecla(window.input.value); } function inteiro(v) { v = v.replace(/\D/g, ''); return v; } </script>
  18. Omar~

    Formulário de acesso vulnerável PHP

    Isso é um porre mesmo.... Fiquei curioso enquanto a isso: O que estaria utilizando para armazenar essas tentativas falhas? Cookie? Se é cookie nem adianta mesmo... A melhor forma que vejo é usar um código de verificação "captcha". Pois como a regra do mesmo é sempre um código aleatório nenhum programa é capaz de prever seu resultado. Enfim já passei por isso, minha alternativa foi utilizar mesmo o código Captcha no login. Mas toda vez que determinado IP erra o login armazenei a tentativa falha em uma tabela quando o mesmo IP chegue a três erros consecutivos a requisição o captcha aparecia sendo necessário. Em X reincidências aquele IP era bloqueado de acesso. Um ponto ruim dessa minha alternativa foi na camuflagem de IP ao qual alguns usuários que não tinham nada haver acabaram tendo seus IP's bloqueados. No entanto foi necessário devido a 1 ou mais pessoas de má fé querendo atrapalhar. Existem diversos captcha na web até aquele famoso do google "Eu não sou um robô" que poderia está implementando. É algo extremamente chato tanto para o administrador da aplicação quanto para os demais usuários, mas vital quando necessário.
  19. Omar~

    Ativar menu conforme for URL

    A melhor formar de fazer isso é: Ao criar o link você o identifica, pode ser com o próprio id da consulta. Então usando o javascript ao abrir a página você remove todos os classificados active dos links. Logo após ao abrir a página você busca o link que contenha aquele id da página e adiciona o classificador active a ele. Exemplo: Criando os links <?php foreach ($array as $v) { ?> <a href="<?= $v['link'] ?>" id="link-de-id-<?= $v['id']?>"><?= $v['texto_a_exibir']? class="exemplo"></a> <?php } Na página que foi aberta consultamos seu id na consulta e usamos jascript <script> var links = document.querySelectorAll('a.exemplo'); for (var i = 0; i < links.length; i++) { links[i].className = 'exemplo'; } document.getElementById('link-de-id-<?= $query['id'] ?>').classList.add('active'); </script> Primeiramente removemos qualquer active que contenha em algum link Então como o id da página tem o mesmo id do link adicionamos o classificador no link
  20. Omar~

    tratar o HTTP_USER_AGENT no php

    Sim só irá retornar esses dados, pois são os dados da máquina que acessou o servidor, para um filtro você deve usar essa informação para buscar o que realmente deseja. Para simplificar eu criei essa classe já há algum tempo que pode usar para obter a informação que deseja: Classe UserAgent.php <?php /** * **************************************************** * @Copyright (c) 2017, Spell Master. * @version 1.2 : 2018 Spell Master * **************************************************** * @Class: Retorna dados na máquina que está acessamdo * o servidor. * **************************************************** * @log v1.2 : Adicionado método para obter o IP da * máquina. * **************************************************** **/ class UserAgent { private $userData; private $userIP; private $setOS; private $setBrowser; private $osTrue = null; private $browserTrue = null; /** ************************************************ * @Method: Define os dados e chama os métodos. * *************************************************/ function __construct() { $filterServe = filter_input_array(INPUT_SERVER, FILTER_DEFAULT); $filterIp = filter_input_array(INPUT_SERVER, FILTER_VALIDATE_IP); $this->userData = $filterServe['HTTP_USER_AGENT']; $this->userIP = $filterIp['REMOTE_ADDR']; $this->checkOs(); $this->checkBrowser(); } /** ************************************************ * @Method: Verifica o sistema operacional. * *************************************************/ private function checkOs() { $os = ['/windows nt 10/i' => 'Windows 10', '/windows nt 6.3/i' => 'Windows 8.1', '/windows nt 6.2/i' => 'Windows 8', '/windows nt 6.1/i' => 'Windows 7', '/windows nt 6.0/i' => 'Windows Vista', '/windows nt 5.2/i' => 'Windows Server 2003/XP x64', '/windows nt 5.1/i' => 'Windows XP', '/windows xp/i' => 'Windows XP', '/windows nt 5.0/i' => 'Windows 2000', '/windows me/i' => 'Windows ME', '/win98/i' => 'Windows 98', '/win95/i' => 'Windows 95', '/win16/i' => 'Windows 3.11', '/macintosh|mac os x/i' => 'Mac OS X', '/mac_powerpc/i' => 'Mac OS 9', '/linux/i' => 'Linux', '/ubuntu/i' => 'Ubuntu', '/iphone/i' => 'iPhone', '/ipod/i' => 'iPod', '/ipad/i' => 'iPad', '/android/i' => 'Android', '/blackberry/i' => 'BlackBerry', '/webos/i' => 'Mobile']; foreach ($os as $reg => $value) { if (preg_match($reg, $this->userData)) { $this->setOS = (string) $value; $this->osTrue = true; } } } /** ************************************************ * @Method: Verifica o navegador. * *************************************************/ private function checkBrowser() { $browser = ['/msie/i' => 'Internet Explorer', '/firefox/i' => 'Firefox', '/safari/i' => 'Safari', '/chrome/i' => 'Chrome', '/edge/i' => 'Edge', '/opera/i' => 'Opera', '/netscape/i' => 'Netscape', '/maxthon/i' => 'Maxthon', '/konqueror/i' => 'Konqueror', '/mobile/i' => 'Handheld Browser']; foreach ($browser as $reg => $value) { if (preg_match($reg, $this->userData)) { $this->setBrowser = (string) $value; $this->browserTrue = true; } } } /** ************************************************ * @Method: Retorna os dados da máquina que está * acessando. * *************************************************/ public function getUserMachine() { return $this->userData; } /** ************************************************ * @Method: Retorna o sistema operacional da máquina * que está acessando. * *************************************************/ public function getOs() { if (isset($this->osTrue)) { return $this->setOS; } else { return " "; } } /** ************************************************ * @Method: Retorna o navegador da máquina que está * acessando. * *************************************************/ public function getBrowser() { if (isset($this->browserTrue)) { return $this->setBrowser; } else { return " "; } } /** ************************************************ * @Method: Obtem o endereço de IP da máquina que * está acessando. * *************************************************/ public function requestIP() { return $this->userIP; } } Usando: <?php require_once('UserAgent.php'); $ua = new UserAgent(); echo("<p>O IP que acessou o servidor é: {$ua->requestIP()}</p>"; . "<p>O Sistema operacional que acessou o servidor é: {$ua->getOs()}</p>"; . "<p>O navegador que acessou o servidor é: {$ua->getBrowser()}</p>"; . "<hr />"; . "<p>Todos dados da máquina: {$ua->getUserMachine()}</p>");
  21. Omar~

    Erro ao criar jogo da memoria

    É muito simples. A função embaralho recebe como parâmetro velho porém nessa linha onde a função é anexada a um objeto. imagens = embaralho(imagens); A variável/objeto/constante em vermelho não foi criada, portando você está passando para a função um parâmetro indefinido, logo length que é um contador de índices não pode contar algo que não existe. Em todo caso suspeito que está tentando criar um objeto chamando uma função referenciando o próprio objeto como parâmetro, e isso não é possível de fazer.... A propósito seu objeto deveria ser criado dentro do escopo da função assim: var objeto = { imagens: embaralho(dados) } Outra coisa que vi. Na função virar ela utiliza um array que não pertence a ela "viradas" essa função também dará erro nesse quesito. Provavelmente você pode ter deixado passar alguma coisa nos vídeos anteriores ou o autor da série irá abordar isso nos próximos, ou mesmo ele pode nem sabe o que está fazendo.... E isso acontece muito no youtub 99% do conteúdo relacionado a programação lá é feito por leigos que não sabe bo$&!@ nenhuma heheheh.... Pode não ser o caso, mas é bom ficar atenta a isso. Se você commitar as imagens em seu repositório, farei um clone aqui e posso ajeitar para você.
  22. Omar~

    Limpar modal bootstrap ao fechar

    Podes postar a estrutura HTML do modal? Porque ao meu ver você está executando ajax em um determinado lugar dentro do modal. Então é simples ao frecha-lo basta re-definir o html do local local_do_ajax.innerHTML = null;
  23. Omar~

    pseudo classes / pseudo elements

    Não. Você pode transcrever no CSS novamente com uma nova pseudo, ambos vão funcionar desde-que não conflitem entre sí ou re-defina(substitua) propriedades. Sim. .classe p.paragrago_expessifico::
  24. Omar~

    Criar um botão que faça atualização

    Arquivos necessários: https://github.com/Spell-Master/sm-web/tree/master/javascript/AjaxRequest <script src="AjaxRequest.js" type="text/javascript"></script> <link href="AjaxRequest.css" rel="stylesheet" type="text/css"/> <div id="atualizar_A"> <?php include('primeira_consulta.php') ?> </div> <div id="atualizar_B"> <?php include('segunda_consulta.php') ?> </div> <button onclick="ajax.load('atualizar_A', 'primeira_consulta.php')">Atualizar a primeira</button> <button onclick="ajax.load('atualizar_B', 'asegunda_consulta.php')">Atualizar a segunda</button> <script>var ajax = new AjaxRequest();</script> Mas percebi que você faz uma referencia de consulta Então se for para passar essa informação para o arquivo: <script src="AjaxRequest.js" type="text/javascript"></script> <link href="AjaxRequest.css" rel="stylesheet" type="text/css"/> <div id="atualizar_A"></div> <div id="atualizar_B"></div> <button onclick="ajax.load('atualizar_A', 'primeira_consulta.php?informacao=123456')">Atualizar a primeira</button> <button onclick="ajax.load('atualizar_B', 'segunda_consulta.php?informacao=123456')">Atualizar a segunda</button> <script> var ajax = new AjaxRequest(); ajax.load('atualizar_A', 'primeira_consulta.php?informacao=346381'); ajax.load('atualizar_B', 'segunda_consulta.php?informacao=346381'); </script> Nos arquivos basta executar a query de acordo com a informacao $info = isset($_GET['informacao']) ? $_GET['informacao'] : false; // Faça um limpeza de string em $info para evitar sql-inject só então jogue-a em sua consulta /* ****** */ descontosacrescimoid={$info} Você poderá usar além do método load() do AjaxRequest os métodos send() ou pop()
  25. Nesse caso podemos usar sim checkbox e fazer através de script o mesmo que o browser faz com o radio, a diferença é que não atacamos o input atual. <input type="checkbox" name="exemplo_A" value="1" class="exemplo" /> <input type="checkbox" name="exemplo_B" value="2" class="exemplo" /> <input type="checkbox" name="exemplo_C" value="3" class="exemplo" /> <script> var checkBox = document.getElementsByClassName('exemplo'), i; // document.getElementsByTagName('exemplo'); /* Use isso se quiser deixar todos checkbox com o mesmo nome */ for (i = 0; i < checkBox.length; i++) { checkBox[i].addEventListener('change', marcarCaixa, false); } function marcarCaixa(e) { for (i = 0; i < checkBox.length; i++) { if (checkBox[i] !== e.target) { checkBox[i].checked = null; } } } </script>
×

Important Information

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