Ir para conteúdo

Camilavip

Members
  • Total de itens

    58
  • Registro em

  • Última visita

Tudo que Camilavip postou

  1. Camilavip

    Preencher combo box em três níveis

    Queria saber como fazer esse select e quando eu trazer um estado ele já puxa as cidades contidos nele, e ao escolher a cidade ele trazer os bairros. Consegui pela internet mas só com estados e cidades. no caso em 2 níveis, e eu precisaria em 3, faço pelo mysqli Em estados no banco está assim CREATE TABLE `estados` ( `id_estado` int(10) NOT NULL, `estado` varchar(30) NOT NULL ) ENGINE=Aria DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `estados` -- INSERT INTO `estados` (`id_estado`, `estado`) VALUES (1, 'Rio de Janeiro'), (2, 'Minas Gerais'); Cidades CREATE TABLE `cidades` ( `id_cidade` int(10) NOT NULL, `id_estado` int(10) NOT NULL, `cidade` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `cidades` -- INSERT INTO `cidades` (`id_cidade`, `id_estado`, `cidade`) VALUES (1, 1, 'Rio de Janeiro'), (2, 2, 'Belo Horizonte'); E bairros CREATE TABLE `bairros` ( `id_bairro` int(10) NOT NULL, `id_cidade` int(10) NOT NULL, `bairro` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `bairros` -- INSERT INTO `bairros` (`id_bairro`, `id_cidade`, `bairro`) VALUES (1, 1, 'Centro'), (2, 1, 'Tijuca'), (3, 1, 'Leblon'), (4, 2, 'Pampulha');
  2. Camilavip

    Preencher combo box em três níveis

    Peguei um em um site internacional e fiz várias mudanças, mas ele está trazendo o resultado 0 e não o nome das cidades e bairros. praticamente funciona tudo. Quando seleciono o estado ele traz um 0, visto que tenho duas cidades somente, ele não traz o nome da cidade. Se seleciono o 0 referente a Belo Horizonte, ele me diz que não tem bairros, porque não tem mesmo nessa tabela que tenho, se seleciono Rio de Janeiro que também aparece 0 e que tem dois bairros, ele traz dois 0 Deixando tudo aqui completo, que é o arquivo index.php, o ajaxdata.php, as tabelas do banco e o arquivo de conexão, porém como referi acima, ele está funcionando, porém só não traz os nomes das cidades ou dos bairros, e sim o 0, então é um detalhe que não estou acertando para ao invés do 0 vir os nomes Não sei onde estou errando. No index.php <!DOCTYPE html> <html lang="en"> <head> <title>Dynamic Dependent Select Box using jQuery, Ajax and PHP</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script> </head> <body> <?php include_once 'config.php'; $query = "SELECT * FROM estados Order by estado"; $result = $db->query($query); ?> <div class="container"> <div class="row"> <div class="col-md-4 col-md-offset-4"> <form> <div class="form-group"> <label for="email">Estado</label> <select name="id_estado" id="id_estado" class="form-control" onchange="FetchCidade(this.value)" required> <option value="">Selecione o Estado</option> <?php if ($result->num_rows > 0 ) { while ($row = $result->fetch_assoc()) { echo '<option value='.$row['id_estado'].'>'.$row['estado'].'</option>'; } } ?> </select> </div> <div class="form-group"> <label for="pwd">Cidade</label> <select name="id_cidade" id="id_cidade" class="form-control" onchange="FetchBairro(this.value)" required> <option>Selecione a Cidade</option> </select> </div> <div class="form-group"> <label for="pwd">Bairro</label> <select name="id_bairro" id="id_bairro" class="form-control"> <option>Selecione o Bairro</option> </select> </div> </form> </div> </div> </div> <script type="text/javascript"> function FetchCidade(id){ $('#id_cidade').html(''); $('#id_bairro').html('<option>Selecione o bairro</option>'); $.ajax({ type:'post', url: 'ajaxdata.php', data : { id_estado : id}, success : function(data){ $('#id_cidade').html(data); } }) } function FetchBairro(id){ $('#id_bairro').html(''); $.ajax({ type:'post', url: 'ajaxdata.php', data : { id_cidade : id}, success : function(data){ $('#id_bairro').html(data); } }) } </script> </body> </html> ajaxdat.php <?php include_once 'config.php'; if (isset($_POST['id_estado'])) { $query = "SELECT * FROM cidades where id_estado=".$_POST['id_estado']; $result = $db->query($query); if ($result->num_rows > 0 ) { echo '<option value="">Selecione a cidade</option>'; while ($row = $result->fetch_assoc()) { echo '<option value='.$row['id_cidade'].'>'.$row['cidade'].'</option>'; } }else{ echo '<option>Cidade não encontrada</option>'; } }elseif (isset($_POST['id_cidade'])) { $query = "SELECT * FROM bairros where id_cidade=".$_POST['id_cidade']; $result = $db->query($query); if ($result->num_rows > 0 ) { echo '<option value="">Selecione o Bairro</option>'; while ($row = $result->fetch_assoc()) { echo '<option value='.$row['id_bairro'].'>'.$row['bairro'].'</option>'; } }else{ echo '<option>Bairro não encontrado</option>'; } } As tabelas -- -------------------------------------------------------- -- -- Table structure for table `bairros` -- CREATE TABLE `bairros` ( `id_bairro` int(11) NOT NULL, `id_cidade` varchar(155) NOT NULL, `bairro` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Dumping data for table `bairros` -- INSERT INTO `bairros` (`id_bairro`, `id_cidade`, `bairro`) VALUES (1, 1, 'Centro'), (2, 1, 'Copacabana'); -- -------------------------------------------------------- -- -- Table structure for table `estados` -- CREATE TABLE `estados` ( `id_estado` int(11) NOT NULL, `estado` varchar(155) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Dumping data for table `estados` -- INSERT INTO `estados` (`id_estado`, `estado`) VALUES (1, 'Rio de Janeiro'), (2, 'Minas Gerais'); -- -------------------------------------------------------- -- -- Table structure for table `cidades` -- CREATE TABLE `cidades` ( `id_cidade` int(11) NOT NULL, `id_estado` varchar(155) NOT NULL, `cidade` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Dumping data for table `cidades` -- INSERT INTO `cidades` (`id_cidade`, `id_estado`, `cidade`) VALUES (1, 1, 'Rio de Janeiro'), (2, 2, 'Belo Horizonte'); -- -------------------------------------------------------- E o arquivo de conexao apenas para deixar tudo aqui <?php $host = 'localhost'; $username = 'usuario'; $pass = 'senha'; $db = 'banco'; $db = new mysqli($host,$username,$pass,$db); if ($db->connect_error) { die("Connection Failed". $db->connect_error); } ?>
  3. Camilavip

    Preencher combo box em três níveis

    Omar, você ainda não entendeu, eu não preciso catalogar os dados, eles vem do banco de dados, eu que cadastro, então não há necessidade de ter tudo, só vai ter o que eu cadastrar. O problema seria em como fazer esse select em 3 níveis, em que quando eu seleciono um ele puxa os outros que estão atrelados ao primeiro.
  4. Camilavip

    Preencher combo box em três níveis

    Com estados e cidades eu consigo, pois já tenho um que peguei na internet e adaptei. Mas no caso como mostrei acima não é ter um que já tenha, como visto nas tabelas no banco de dados, tantos os estados, cidades e bairros são cadastrados, e não precisando que já venham todos do Brasil
  5. Camilavip

    Alteração não está permitindo campo vazio

    Não funcionou, creio que aqui abaixo é que esse código define se o campo pode ser vazio ou não if (!empty($_POST['ativo'])) { $campos[] = sprintf("ativo= '%s'", $_POST['ativo']); }
  6. Camilavip

    Alteração não está permitindo campo vazio

    Oi, estou em um formulário de alteração, e quando vou deixar um campo vazio ou com valor 0, ele não faz a alteração. } else { if (isset($_POST['Alterar']) && $_POST['Alterar'] == "ok") { $campos = array(); if (!empty($_POST['login'])) { $campos[] = sprintf("login= '%s'", $_POST['login']); } if (!empty($_POST['senha'])) { $campos[] = sprintf("senha= '%s'", sha1($_POST['senha'])); } if (!empty($_POST['ativo'])) { $campos[] = sprintf("ativo= '%s'", $_POST['ativo']); } if (!empty($_POST['id'])): $sql = "UPDATE clientes SET ".implode(', ', $campos)." WHERE id_cliente = ".$_POST['id']; $query = $sqli->query($sql); else: return false; endif; echo "<script> alert('Edição efetuada com sucesso! Clique em OK');</script>"; } ?> Se eu deixar um campo vazio como login ou senha ele não faz o update neste campo, ou no ativo que é 0 ou 1, se eu trocar o 0 por um valor 2 ele aceita, mas não o valor 0 Obs: Espero que algumas pessoas não se importe de eu perguntar no fórum, eu até consegui outra forma de fazer o update, porém queria saber porque nesse caso não consigo. Estou aprendendo. No caso acima creio que o código não esteja permitindo isso, e queria saber o porque.
  7. Camilavip

    Gravando senha criptografada

    Boa noite a todos, estou tendo um probleminha em gravar a senha criptografada, na verdade editar, pois quando gravo vai certo, mas na edição não está dando certo. A baixo quando cadastro o cliente é assim, e está indo perfeito. $nome = $_POST['nome']; $email = $_POST['email']; $login = $_POST['login']; $senha = sha1($_POST['senha']); Mas na hora da edição como está um pouco diferente estou tentando colocar esse sha1 em todo lugar e não está dando nome='$_POST[nome]', email='$_POST[email]', login='$_POST[login]', senha='$_POST[senha]', Então no de cima no cadastro está ok, mas na edição não sei mais aonde coloco esse sha1 para dar certo ou é burrice minha mesmo,
  8. Camilavip

    order by não estou conseguindo

    Obrigado mais uma vez
  9. Camilavip

    order by não estou conseguindo

    Um probleminha, estou tentando setar um order by limitado a um registro, e sendo o último, mas precisamente não consigo o resultado que quero. "SELECT * FROM clientes ORDER BY id_cliente DESC LIMIT 1"; Dessa forma eu consigo sempre trazer o último cliente cadastrado, mas eu tentei trazer o último cliente ativo ou mesmo se não tivesse algum inativo que ele não mostrasse nada "SELECT * FROM clientes ORDER BY ativo = 0 DESC LIMIT 1"; "SELECT * FROM clientes ORDER BY ativo= 0 DESC LIMIT 1"; "SELECT * FROM clientes ORDER BY ativo=0 DESC LIMIT 1"; "SELECT * FROM clientes ORDER BY ativo = '0' DESC LIMIT 1"; Tentei todos os exemplos, então se todos os clientes tivessem ativos com resultado 1 ele não me retornaria nada, mas ele me retorna sempre o primeiro cadastro na ordem por id. Algo errado
  10. Dessa vez venho perguntar por curiosidade mesmo, aprender. Me passou uma dúvida, se eu tiver digitando uma senha ela aparece para mim ****** no exemplo que eu tinha uma senha 123456 Mas se eu por exemplo ver o código fonte da página, a senha simplesmente é revelada. no input password 123456. Sei que é coisa louca, mas me pintou uma dúvida só. De uma pessoa está digitando um login e senha e sair do local, alguém querendo somente ver a senha da pessoa entra no código fonte rapidamente da página e pega a senha da pessoa para até usar posteriormente. São coisas difíceis de acontecer, mas sei que tem casos assim, e fiquei pensando, não existe jeito de ocultar uma senha mesmo se a pessoa exibir o código fonte da página? Isso de script para bloquear botão direito é coisa do passado e sei disso, o que pergunto seria uma forma de ocultar mesmo que a pessoa visse pelo código fonte.
  11. Camilavip

    Ativação por password_hash

    Dessa forma não adiantou
  12. Camilavip

    Ativação por password_hash

    Boa noite, fiz uma ativação no cadastro de clientes, pelo md5 funciona perfeitamente, e pelo password_hash até certo ponto. O link para criptografar e gerar um link pelo md5 $md5 = md5($id_cliente); E para ele concluir. $pdo->query("UPDATE clientes SET ativo_usuario='1' WHERE MD5(id_cliente) = '$h'"); Já no password_hash a primeira parte acertei $hash = password_hash($id_cliente, PASSWORD_DEFAULT); Mas o link não faz a a ativação $pdo->query("UPDATE clientes SET ativo_usuario='1' WHERE password_hash(id_cliente) = '$h'"); $pdo->query("UPDATE clientes SET ativo_usuario='1' WHERE hash(id_cliente) = '$h'"); Ou na verdade é algo que não sei inserir ali.
  13. Camilavip

    Fazer verificação de um formulário sem refresh

    Boa noite, Alguém tem uma solução para um formulário na dar refresh antes de fazer uma consulta? No formulário que tenho ele verifica se no banco de dados já existe um login ou email , assim não cadastro duplicado um cliente, mas ele da um refresh quando insiro os dados e clico no botão de cadastrar, se estiver ok ele cadastra, se ele verificar um login ou email iguais no banco de dados ele volta a página avisando, mas acaba que assim ele apaga todos os dados inseridos, e tenho de digitar tudo novamente, queria que ele fizesse a consulta sem dar o refresh. <?php session_start(); ob_start(); $btnCadUsuario = filter_input(INPUT_POST, 'btnCadUsuario', FILTER_SANITIZE_STRING); if($btnCadUsuario){ include_once 'conexao.php'; $dados_rc = filter_input_array(INPUT_POST, FILTER_DEFAULT); $erro = false; $dados_st = array_map('strip_tags', $dados_rc); $dados = array_map('trim', $dados_st); if(in_array('',$dados)){ $erro = true; $_SESSION['msg'] = "Necessário preencher todos os campos"; }elseif((strlen($dados['senha'])) < 6){ $erro = true; $_SESSION['msg'] = "A senha deve ter no minímo 6 caracteres"; }elseif(stristr($dados['senha'], "'")) { $erro = true; $_SESSION['msg'] = "Caracter ( ' ) utilizado na senha é inválido"; }else{ $result_usuario = "SELECT id_cliente FROM clientes WHERE login='". $dados['login'] ."'"; $resultado_usuario = mysqli_query($conn, $result_usuario); if(($resultado_usuario) AND ($resultado_usuario->num_rows != 0)){ $erro = true; $_SESSION['msg'] = "Este login já está sendo utilizado"; } $result_usuario = "SELECT id_cliente FROM clientes WHERE email='". $dados['email'] ."'"; $resultado_usuario = mysqli_query($conn, $result_usuario); if(($resultado_usuario) AND ($resultado_usuario->num_rows != 0)){ $erro = true; $_SESSION['msg'] = "Este e-mail já está cadastrado"; } } //var_dump($dados); if(!$erro){ //var_dump($dados); $dados['senha'] = sha1($dados['senha']); $result_usuario = "INSERT INTO clientes (nome, email, login, senha) VALUES ( '" .$dados['nome']. "', '" .$dados['email']. "', '" .$dados['login']. "', '" .$dados['senha']. "' )"; $resultado_usario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msgcad'] = "cliente cadastrada com sucesso"; header("Location: principal.php"); }else{ $_SESSION['msg'] = "Erro ao cadastrar o usuário"; } } } ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Cadastro de clientes</title> <link href="bootstrap/bootstrap.min.css" rel="stylesheet"> <script src="bootstrap/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Cadastrar Usuário</h2> <?php if(isset($_SESSION['msg'])){ echo $_SESSION['msg']; unset($_SESSION['msg']); } ?> <form method="POST" action=""> <input type="text" name="nome" id="nome" class="form-control"><br> <input type="email" name="email" class="form-control"><br><br> <input type="text" name="login" class="form-control"><br><br> <input type="password" name="senha" id="senha" class="form-control"><br <center><input type="submit" name="btnCadUsuario" value="Cadastrar" class="btn btn-success" ></center><br><br> </form> </div> </div> </body> </html>
  14. Camilavip

    Fazer verificação de um formulário sem refresh

    Vou ver Omar, eu tenho outra forma de verificar se existe sem refresh, porém ele só verifica e não impede o cadastro, a forma que está impede o cadastro se houver um login ou email parecido, mas se tiver outros dados como endereço e outras coisas, no fim se ele verifica e ve que tem um login e email iguais ele faz o refresh e avisa, porém apaga todos os campos preenchidos. Tendo de refazer o cadastro novamente
  15. Camilavip

    Gravando senha criptografada

    Obrigado pela força, não sou programadora, apenas tento aprender um pouco para melhorar o que tenho. Mas muitas pessoas acham que qualquer um que entra no fórum tem de ser programador ou dominar essa função. Pedir ajuda passa a ser um crime por alguns, e quem ajuda parece que deve ser condenado por isso. Obrigada por ajudar e não ficar questionando como muitos.
  16. Camilavip

    Gravando senha criptografada

    Já te respondi em outro fórum. Acho que você está incomodado com as pessoas que tem capacidade de ajudar outras. Creio não ser nada ético postar algo desse tipo sem conhecer as pessoas.
  17. Camilavip

    Desativar cadastro automaticamente após um período

    Meu amigo, muitas vezes peço ajuda aqui, e por vezes mostro o que vou ajustando. E sempre que consigo a solução por mim mesmo, sempre posto no fórum para ajudar outras pessoas. Muitos quando arrumam a solução deixam de fazer isso. Mas se você acha que estou fazendo pessoas de "otário", apenas não ajude. Grata.
  18. Camilavip

    Desativar cadastro automaticamente após um período

    Boa noite, alguém por acaso sabe um modo simples de se desativar um cadastro automaticamente após um período? Deixa eu explicar. Eu cadastro um cliente, em que na tabela do banco de dados tem o campo "ativo" onde 1 é ativado e 0 é desativado. Então eu queria cadastrar esse cliente e o ativar, mas que no período de 30 dias por exemplo ele se desativasse sozinho. Alguém sa8e algo simples nesse sentido?
  19. Camilavip

    Desativar cadastro automaticamente após um período

    Então, eu tenho uma coluna ativo como já mencionei, então quando eu ativo o cadastro deste cliente ele saí do 0 e vai para 1, que é ativado, e caso esse cliente não retorne ao seu cadastro no período de 30 dias, esse cadastro automaticamente fosse de 1 para 0 novamente. Não sei como implementar isso de uma maneira simples e fácil. Eu crio essa tabela date, até aí estou entendendo, mas o restante para fazer o cadastro desabilitar que não sei aonde colocaria. Eu sou burrinha as vezes
  20. Camilavip

    Gravando senha criptografada

    Consegui assim. senha=sha1('$_POST[senha]'), Mas veio outro problema, quando edito o cadastro ele troca a senha sozinho. Se eu trago a senha do banco, ele regrava a senha já criptografada em outra, se eu deixo o campo vazio para só trocar quando digitar algo, o vazio ele gera uma senha criptografada. Fiquei sem saída
  21. Camilavip

    Melhor Hospedagem

    Mas essa hospedagem pelo jeito é daquelas fundo de quintal, aonde alguém aluga uma servidor nos EUA e atende em um quartinho nos fundos de sua casa. Hospedagem que não tem telefone fixo, endereço e nem CNPJ é furada
  22. Camilavip

    Trazer resultado de 0 ou 1 em Não ou Sim

    Oi, faço uma consulta no banco de dados para trazer os valores como: Nome, email, telefone, cidade... e se o usuário está ativo ou não No campo ativo ele grava 0 se não tiver ativo e 1 se tiver ativo, mas queria que ele trouxesse se for 0 a palavra Não e se for 1 a palavra Sim Faço a consulta como abaixo. <?php $sql = "SELECT * FROM clientes"; $result = $sqli->query($sql); if ($result->num_rows) { while ($dados = $result->fetch_assoc()) { $id_cliente = $dados['id_cliente']; $cliente = $dados['cliente']; $email = $dados['email']; $ativo = $dados['ativo']; ?> E em seguida apenas chamo os dados. <?= $cliente; ?> <?= $email; ?> <?= $ativo; ?> Que me traz os resultados Ricardo xxxx@xxxx.com 0 ou 1 de acordo se ele está ativo ou não. Mas aqui eu queria que ele trouxesse de acordo Não ou Sim e não 0 ou 1
  23. Camilavip

    Trazendo formato data invertida

    Ao realizar um cadastro de um cliente, é gravado no banco a data e hora deste cadastro, porém a data é gravada no formato yyyyy-mm-dd e eu queria o nosso padrão dd-mm-yyyy A tabela do banco: `created` datetime NOT NULL, que grava por exemplo: 2020-07-07 12:28:38 No php eu trago assim: <?php echo $rows_contatos['created']; ?> Mas traz no formato acima 2020-07-07 12:28:38 e eu queria o 07-07-2020 12:28:38
  24. Camilavip

    Trazer resultado de 0 ou 1 em Não ou Sim

    Oi Williams. Novamente sua solução deu certo. Mas quando vou dar um coração ou troféu para você aparece essa mensagem: Sorry, there was a problem reacting to this content. Motta, agradeço sua ajuda, mas a solução do Willians para mim deu certo e foi mais prática, a sua não testei, mas iria me fazer ter de colocar no select todos os campos do cadastro do cliente que são muitos, acaba que iria fazer o mesmo do que o Williams postou. Mas fico grata.
  25. Camilavip

    Trazer resultado de 0 ou 1 em Não ou Sim

    Não entendi quase nada ali de como colocar em prática. Tinha tentado usar de outra forma mais deu erro array( '/0/', '/1/' ), array( 'Não', 'Sim' )
×

Informação importante

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