Ir para conteúdo
Camilavip

Gravando senha criptografada

Recommended Posts

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,

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

A função Sha1 calcula a hash da string, e este hash é um número hexadecimal de 40 caracteres, não há possibilidade de descriptografar, porém esta  forma de armazenar senhas com sha1, md5 e base_encode, hash com sha512, hoje em dia não é mais recomendado.

Existe funções nativas e melhores, uma delas é a:

https://www.php.net/manual/pt_BR/function.password-hash.php

Vontando ao seu código.

senha=sha1('$_POST[senha]')

Não é nescessário usar aspas simples em variaveis de funções

Remova as aspas simples 

senha =sha1 ($_POST['senha'])

 

e valide estas entradas de formulários,  como por exemplo, para email, use os filtros de sanitização

 

https://www.php.net/manual/en/filter.filters.sanitize.php

$email = filter_var ( $_POST['email'], FILTER_SANITIZE_EMAIL);

ou terá problemas.

 

Em 06/08/2020 at 21:55, Camilavip disse:

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


Há várias maneiras de se fazer isto, umas delas é montar a query dinamicamente, de acordo com o campos enviados. Ou criar duas queries de update, uma contendo o campo senha e a outra não.

 


if (empty($_POST['senha'])) {
	// update sem o campo senha
} else {
	// update contendo o campo senha
}








 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa "moça" faz varios posts no forum dando uma de "quero uma forma facil" e estou vendo varias pessoas codando pra ela exatamente o que ela pede.

 

Tomem cuidado com estes tipos de perfis de mulher com foto bonitinha porque você pode estar trabalhando de graça querendo agradar uma moça enquanto está sendo feito de otario!

 

Esse perfil já vi em outros foruns também...

"Ela" raramente posta algum código e sempre aparecem os caras com soluções prontas e personalizadas ao que ela pede, prestem atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 horas atrás, Guilherme Luiz disse:

Essa "moça" faz varios posts no forum dando uma de "quero uma forma facil" e estou vendo varias pessoas codando pra ela exatamente o que ela pede.

 

Tomem cuidado com estes tipos de perfis de mulher com foto bonitinha porque você pode estar trabalhando de graça querendo agradar uma moça enquanto está sendo feito de otario!

 

Esse perfil já vi em outros foruns também...

"Ela" raramente posta algum código e sempre aparecem os caras com soluções prontas e personalizadas ao que ela pede, prestem atenção.

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 horas atrás, Guilherme Luiz disse:

Essa "moça" faz varios posts no forum dando uma de "quero uma forma facil" e estou vendo varias pessoas codando pra ela exatamente o que ela pede.

 

Tomem cuidado com estes tipos de perfis de mulher com foto bonitinha porque você pode estar trabalhando de graça querendo agradar uma moça enquanto está sendo feito de otario!

 

Esse perfil já vi em outros foruns também...

"Ela" raramente posta algum código e sempre aparecem os caras com soluções prontas e personalizadas ao que ela pede, prestem atenção.

Aqui não é StackOverFlow, que tem regras pra tudo, "oque levou muita gente para grupos de Facebook e Telegram", já tive dúvidas do mesmo tipo quando estava começando. Levei porrada de gente arrogante, e tive as melhores respostas de gente humilde na minha caminhada.

- ->>  Se está lhe incomodando, ignore.  Simples assim!!!

Sem falar que, este fórum está quase morto, ela é umas das que movimenta o fórum.

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 horas atrás, Williams Duarte disse:

Aqui não é StackOverFlow, que tem regras pra tudo, "oque levou muita gente para grupos de Facebook e Telegram", já tive dúvidas do mesmo tipo quando estava começando. Levei porrada de gente arrogante, e tive as melhores respostas de gente humilde na minha caminhada.

- ->>  Se está lhe incomodando, ignore.  Simples assim!!!

Sem falar que, este fórum está quase morto, ela é umas das que movimenta o fórum.

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é questão de regra ou não.
Muito menos de conhecimento ou não

 

O que estou apontando é uma pessoa que sempre pede coisas especificas e personalizadas e vejo as pessoas entregando de graça...

 

Isso não é ajudar quem tem dúvida

Quem está "codando" para ela não está ajudando

Muito menos ser arrogante.

 

Concordo que a comunidade de devs tem que ser formada por devs de todos os niveis, mas a partir do momento que é percebido que as "ajudas" fornecidas são códigos prontos do que a pessoa pede, ai já não é ajudar e sim trabalhar de graça.

Apenas para recordar uma das orientações/regras do fórum

 

2 - Estamos Aqui Para Orientar
Poste um trecho do que você já fez. Estamos aqui para te orientar e para te ajudar a aprender. Não vamos fazer seu trabalho por você.

 

Para não sair de "vilão" digo: Sou totalmente a favor de troca de dúvidas, ajudar, orientar, direcionar tanto que eu mesmo diariamente fico lendo foruns, postando dúvidas, esclarecendo dúvidas, etc. Entendo e sei que todos começamos do passo 1, mas no caso em questão repare em demais publicações que é um usuário de CTRL+C / CTRL+V que por diversas vezes se faz de "me ajudem por favor não sei o que fazer" e acaba conseguindo códigos prontos e personalizados.

 

O intuito não é no sentido de pare de ajudar as pessoas, estou sendo ignorante/arrogante, nada disso, mas sim de alertar a todos que estão trabalhando de graça para esse usuário e tais coisas não devem ser ignoradas e movimentar o fórum só por movimentar é melhor ficar sem movimento mesmo.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Guilherme Luiz, veja a maioria das respostas especificamente deste fórum, "desde quando iniciou", as respostas sempre foram no mesmo formato. Lá no Stack, onde também colaboro, minhas respostas já é totalmente diferente das daqui, são outras regras e outros egos.

 

Com o seu modo de pensar, você jamais poderá usar framewoks, bibliotecas, pois muitos trabalharam de graça, e duvido que você estava lá pelo menos ajudando nas documentações "eu já fiz alguns pull requests em projetos que uso e, ainda vou continuar". Veja o case Laravel, Vue, quantas pessoas abraçaram as idéias de Taylor Otwell e ‎Evan You  sem ganhar um centavo troca, se eles hoje faturam alto, é devido ao espírito open source. Se você não entendeu isto ainda, esquece ferramentas como Composer, Docker, Kubernetes, e tantas outras que ainda vão surgir.

Aqui mesmo, você acabou entregar o código mastigado para o rapaz.

https://forum.imasters.com.br/topic/586585-chamar-json-com-php/?do=findComment&comment=2288320

Se você se preocupa tanto, em não trabalhar de graça ou coisa do tipo, indique o link no manual e deixa o cara estudar, lembrando que já vi em outros posts seus, a mesma ação.

Encerro aqui, porque suas atitudes não condiz. 

E deixa a moça em paz!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por Carlos Web Soluções Web
      Olá...
      Estou tentando fazer o seguinte !!
      Listando dados em tabela !!
      Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
      Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!

       
      echo "<table class='tabela_dados' border='1'> <tr> <td>ID</td> <td>Nome Empresa</td> <td>Responsável</td> <td>Telefone 1</td> <td>Telefone 2</td> <td>E-mail 1</td> <td>E-mail 2</td> <td>Endereço</td> <td>CEP</td> <td>Bairro</td> <td>AÇÃO 1</td> <td>AÇÃO 2</td> </tr> "; $sql = "SELECT ID FROM usuarios_dados WHERE Usuario='$usuario'"; $result = $conn->query($sql); $num_rows = $result->num_rows; $Novo_ID = 1; for ($i = 0; $i < $num_rows; $i++) { $registro = $result -> fetch_row(); $sql2 = "UPDATE usuarios_dados SET ID='$Novo_ID' WHERE ID='$Novo_ID'"; $result2 = $conn->query($sql2); $Novo_ID++; } $sql = "SELECT * FROM usuarios_dados"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<tr> <td>$row[ID]</td> <td>$row[Nome_Empresa]</td> <td>$row[Responsavel]</td> <td>$row[Telefone_1]</td> <td>$row[Telefone_2]</td> <td>$row[Email_1]</td> <td>$row[Email_2]</td> <td>$row[Endereço]</td> <td>$row[CEP]</td> <td>$row[Bairro]</td> <td> <form method='post' action='Editar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='EDITAR'> </form> </td> <td> <form method='post' action='Deletar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='DELETAR'> </form> </td> </tr> "; } } else { echo "0 results"; } $conn->close();  
    • Por ILR master
      Boa tarde pessoal, tudo bem ?
       
      Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
      O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
       
      A pergunta é:
       
      O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
      Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
      Ou é melhor usar um outro editor?
       
      Agradeço deste já.
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por ILR master
      Fala pessoal.
       
      Seguinte:
       
      Quero selecionar duas tabelas e mostrar com resultados intercalados. Abaixo segue um código explicando para vcs terem uma ideia.
       
      $consulta = "SELECT A.*, B.* FROM tabela1 A, tabela2 B'";
      $resultado = mysqli_query($conexao, $consulta) or die ("erro");
      while($busca = mysqli_fetch_array($resultado)){
       
      print $busca['cod_evento']; --> traz o código da tabela1 
      print $busca['titulo_evento']; -->  traz o titulo da tabela1
      print $busca['cod_noticia']; --> traz o código da tabela2
      print $busca['titulo_noticia']; --> traz o tituloda tabela2
       
      }
       
      Espero que entendam. Grato
       
×

Informação importante

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