Advertisement
Guest User

Untitled

a guest
Apr 17th, 2017
593
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.33 KB | None | 0 0
  1. class geraHash {
  2. private $codigo;
  3.  
  4. //Aqui é o encapsulamento dos dados
  5. public function setCodigo($codigo){
  6. $this -> codigo = $codigo;
  7. }
  8. public function getCodigo(){
  9. return $this->codigo;
  10. }
  11.  
  12. //Aqui é o método que gera o código de verificação
  13. public function GeraCodigo($qtd){
  14.  
  15. $Caracteres = 'ABCDEFGHIJKLMOPQRSTUVXWYZ0123456789';
  16. $QuantidadeCaracteres = strlen($Caracteres);
  17. $QuantidadeCaracteres--;
  18.  
  19. $Hash=NULL;
  20. for($x=1; $x <= $qtd; $x++){
  21. $Posicao = rand(0,$QuantidadeCaracteres);
  22. $Hash .= substr($Caracteres,$Posicao,1);
  23. }
  24.  
  25. return $Hash;
  26. }
  27.  
  28. //Aqui é o método que faz a verificacao e onde eu gostaria de obter o dado setado
  29. public function VerificaCod($cod) {
  30. $codVerificacao = $this->getCodigo();
  31. //if ($cod === $codVerificacao){
  32. echo $codVerificacao, $cod;
  33. return TRUE;
  34. //}
  35.  
  36. }
  37.  
  38. }
  39.  
  40. <?php
  41. include 'geraHash.php';
  42.  
  43. class loginDAO {
  44.  
  45. public function recuperaSenha(loginVO $login){
  46.  
  47. $mysqli = new mysqli("localhost", "root", "", "bdMeuBanco");
  48. $stmt = $mysqli ->prepare("SELECT emailLogin FROM tblLogin WHERE emailLogin = ?");
  49. $stmt ->bind_param("s", $p1);
  50.  
  51. $p1 = $login ->getEmailLogin();
  52.  
  53. $stmt ->execute();
  54.  
  55. if($stmt ->num_rows >=0){
  56. $geraHash = new geraHash(); //Aqui ocorre a instancia de um novo objeto
  57. $cod = $geraHash ->GeraCodigo(6); // Aqui eu chamo o método que gera o cod que vai ser passado na msgm via email
  58. $geraHash->setCodigo($cod); //Aqui eu seto o dado no objeto
  59.  
  60.  
  61.  
  62. $arquivo = "<html><head><meta charset='utf-8'></head><style type='text/css'> body{font-family: monospace;color: darkgray;font-size: 16px;width: 500px;}h3{color: black;}</style><body>Enviamos esse código para que possa redefinir sua senha.<br><h3>$cod</h3> <br>Se você não solicitou a redefinição de sua senha ignore este email!</body></html>";
  63. $destino = $login->getEmailLogin();
  64. $assunto = "Redefinição de senha";
  65.  
  66. require_once('class.phpmailer.php'); //chama a classe de onde você a colocou.
  67.  
  68. $mail = new PHPMailer(); // instancia a classe PHPMailer
  69.  
  70. $mail->IsSMTP();
  71.  
  72. //configuração do gmail
  73. $mail->Port = '465'; //porta usada pelo gmail.
  74. $mail->Host = 'smtp.gmail.com';
  75. $mail->IsHTML(true);
  76. $mail->Mailer = 'smtp';
  77. $mail->SMTPSecure = 'ssl';
  78.  
  79. //configuração do usuário do gmail
  80. $mail->SMTPAuth = true;
  81. $mail->Username = 'meu.email@gmail.com'; // usuario gmail.
  82. $mail->Password = 'password'; // senha do email.
  83.  
  84. $mail->SingleTo = true;
  85.  
  86. // configuração do email a ver enviado.
  87. $mail->From = "meu.email@gmail.com";
  88. $mail->FromName = "meu dominio";
  89.  
  90. $mail->addAddress($destino); // email do destinatario.
  91.  
  92. $mail->Subject = $assunto;
  93. $mail->Body = $arquivo;
  94. $mail ->CharSet = "UTF-8";
  95.  
  96.  
  97. if(!$mail->Send()){
  98. echo "Erro ao enviar Email:" . $mail->ErrorInfo;
  99. }
  100.  
  101. return TRUE;
  102. }
  103.  
  104. }
  105.  
  106. <?php
  107. include 'loginDAO.php';
  108.  
  109. $loginDAO = new loginDAO();
  110.  
  111. if(NULL !== filter_input(INPUT_POST, "btnConfirmar2")){ //Aqui verifica se o botão existe para receber uma acao
  112.  
  113. $geraHash = new geraHash();
  114. $cod = filter_input(INPUT_POST, "userCodPass");
  115. if($geraHash ->VerificaCod($cod)){
  116. echo "Funcionou";
  117. }
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement