Jump to content
vonder

CADASTRO, LOGIN, SENHA

Recommended Posts

Preciso de validar os campos do "CRIAR LOGIN";

Armazenar informações em alguma variável ao clicar no botão CADASTRAR; (não pode usar banco de dados)

validar campos do "LOGIN";

permitir acesso ao LOGIN se as informações forem iguais as inseridas no CRIAR LOGIN;

 

Se conseguirem armazenar os cadastros em algum vetor ajudaria dms!

exemplo.png

Share this post


Link to post
Share on other sites
7 horas atrás, alexalannunes disse:

Opa!
 Explica melhor essa situação para eu ajudar

 

o link da minha atividade ... goo.gl/yrnmok

 

Eu fiquei garrado na segunda tela, onde o cliente pode cadastrar e logar tudo em uma página;

 

Eu preciso validar todos os campos e obrigatoriamente o cliente precisa ter um cadastro para logar;

 

Quando ele cadastrar e clicar no botão, os dados dele deverá ser armazenado em uma variável ou em um vetor (seria melhor no vetor para mais de uma pessoa cadastrar );

 

E ele só poderá logar se os dados que ele colocou no login estiverem iguais aos dados que ele cadastrou.

 

Tem que ser feita em PHP.

 

Comecei tem pouco tempo na matéria, ainda não aprendi utilizar o banco de dados por isso o professor pediu o uso do VETOR.

 

Share this post


Link to post
Share on other sites

Nao precisa de vetor ..

usando jQuery voce faria o seguine

 

@vender Segue o exemplo, boa sorte

 

Será o mesmo processo para pedidos.php

 

 


$('.btn_cad').click(function() {
  var cad_email = $('.cad_email').val();
  var cad_senha = $('.cad_senha').val();
  
  
  // enviar para o server
  var data = {
    email: cad_email, 
    senha: cad_senha
  };
  $.post('cadastrar.php', data, function(data) {
   	if (data == 1) {
      // insere dados no form de login
      $('.log_email').val(cad_email);
  	  $('.log_senha').val(cad_senha);
    }
    else {
      alert('Erro ao cadastrar'); 
    }
  })
});

$('.btn_login').click(function() {
  var cad_email = $('.cad_email').val();
  var cad_senha = $('.cad_senha').val();
  var log_email = $('.log_email').val();
  var log_senha = $('.log_senha').val();
  
  // antes de enviar
  if (cad_email != log_email) { alert('email de cadastro difere no de login') } 
  else if (cad_senha != log_senha) { alert('senha de cadastro difere no de login') } 
  else {
   	$.post('login.php', data, function(data) {
      if (data == 1) {
        // logado com sucesso
      }
      else {
        alert('Erro ao logar'); 
      }
 	}) 
  }

});

o PHP

 

<?php
	include('conexao.php');

	// cadastrar (cadastrar.php)
	// tratar entradas de usuarios // addslashes
	$email = $_POST['email'];
	$senha = $_POST['senha'];

	// aqui vai inserir no banco
	$cad = $pdo->prepare("INSERT INTO cliente(email,senha) VALUES(?,?)");
	$cad->execute(array($email, $senha));
	echo $cad->rowCount(); // se cadastrar 1 senao 0; ==> onde você vai capturar no if la no JS (data == 1) 


	/// login (login.php)
	$email = $_POST['email'];
	$senha = $_POST['senha'];

	// aqui vai buscar no banco
	$cad = $pdo->prepare("SELECT * FROM clientes WHERE email = ? AND senha = ?");
	$cad->execute(array($email, $senha));
	echo $cad->rowCount(); // se tiver cliente com esses dados: 1 senao 0; ==> onde você vai capturar no if la no JS (data == 1) 
?>

 

Share this post


Link to post
Share on other sites

Pode usar sessões -> $_SESSION já que não quer usar BD, fiz um exemplo básico:

 

Fiz apenas validações para exemplo, você pode melhorar.

 

index.php

<?php

if (isset($_POST['cad_enviar'])) { // recebe o post do cadastro
	$cad_email = $_POST['cad_email'];
	$cad_senha = $_POST['cad_senha'];

	session_start(); // inicia e grava a sessão
	$_SESSION['email'] = $cad_email;
	$_SESSION['senha'] = $cad_senha;
	echo "<script>alert('Cadastro realizado com sucesso!');window.location.replace('index.php');</script>";
}

?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Cadastro e Login sem BD</title>
</head>

<body>

<form name="cadastro" action="#" method="post">
	<input type="email" name="cad_email" placeholder="Email..."><br>
	<input type="password" name="cad_senha" placeholder="Senha"><br>
	<input type="submit" name="cad_enviar" value="Cadastrar">
</form>

<hr><br><br>

<form name="login" action="login.php" method="post">
	<input type="email" name="log_email" placeholder="Email..."><br>
	<input type="password" name="log_senha" placeholder="Senha"><br>
	<input type="submit" name="log_enviar" value="Logar">
</form>

<br><br>
<a href="pedidos.php">Pedidos</a><br>
<a href="logout.php">Deslogar</a><br>

</body>
</html>

login.php

<?php

if (isset($_POST['log_enviar'])) { // pega o post do login
	$log_email = $_POST['log_email'];
	$log_senha = $_POST['log_senha'];
  	session_start();
	if ($log_email == $_SESSION["email"] && ($log_senha == $_SESSION['senha'])) { // verifica os dados
      unset($_SESSION["email"]); // destroi sessões anteriores
      unset($_SESSION['senha']);
      $_SESSION['email_liberado'] = $log_email; // cria novas sessões
      $_SESSION['senha_liberada'] = $log_senha;
      echo "<script>alert('Login realizado com sucesso!');window.location.replace('index.php');</script>";
	}else{
      echo "<script>alert('Erro ao logar, tente novamente!');window.location.replace('index.php');</script>";
	}
}else {
  echo "<script>alert('Você não tem permissão para acessar essa página!');window.location.replace('index.php');</script>";
}

?>

pedidos.php

<?php
  session_start(); // verifica se o login existe na sessão
  if((!isset ($_SESSION['email_liberado']) == true) and (!isset ($_SESSION['senha_liberada']) == true)){
    echo "<script>alert('Você não tem permissão para acessar essa página!');window.location.replace('index.php');</script>";
  }
?>

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Pedidos</title>
  </head>
  <body>
    <h2>Seja vem vindo,</h2> <?php echo $_SESSION['email_liberado'] . "!"; ?>
    <br><br>
    <a href="index.php">Index</a>
  </body>
</html>

logout.php

<?php
  session_start();
  session_destroy(); //destroi todas as sessoes
  echo "<script>alert('Logout realizado com sucesso!');window.location.replace('index.php');</script>";
?>

Leia sobre $_SESSION: http://php.net/manual/pt_BR/reserved.variables.session.php

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Sapinn
      Opa galera. Então depois que eu comecei a usar cookies no meu sistema o seguinte erro está acontecendo Cannot modify header information - headers already sent by não sei exatamente o que é e preciso de ajuda. O erro ocorre quando eu verifico se a caixa "mantenha-me conectado" é marcada então eu faço uma verificação direto no index.
      <?php     session_start();              include '../app/configuracao.php';         include '../app/autoload.php';         include '../app/Controllers/Admins.php';         $rotas = new Rota();         $db = new DataBase();         $control = new Admins();         if(isset($_COOKIE['acesso'])){             $db->query('select * from admins where acesso = :acesso');             $db->bind('acesso',$_COOKIE['acesso']);             $db->resultado();                  if($db->resultado()){                 $control->fazLogin(isset($db->resultado()->email), isset($db->resultado()->senha));             }         }            ?>  
    • By Jack Oliveira
      Ola pessoal boa noite preciso salvar umas coisas no banco de dados usando ao clicar no botão que esteja aparecendo sem que recarregue a página
       
      Seria isso aqui
       
      HTML do botão
      <div class="btn-group"> <a href="javascript:void(0)" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-up" aria-hidden="true"></i> Sim </a> <a href="javascript:void(0)" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-down" aria-hidden="true"></i> Não </a> </div> No PHP para salvar no banco esta da seguinte forma.
      <?php if(isset($_POST['AvaliComentario'])) { // Se o cookie ainda não foi setado $cookie = isset($_COOKIE["avali_comentario_".$Comentario['id']]) ? $_COOKIE["avali_comentario_".$Comentario['id']] : null; if (!isset($cookie)) { $Adicionar = array( 'comentario_id' => $Comentario['id'], 'up' => post('up'), 'down' => post('down') ); $Query = DBCreate('avali_comentario', $Adicionar); // Se for um sucesso a query if ($Query) { // Seta um cookie setcookie("avali_comentario_".$Comentario['id']."", true, time()+60*60*24*6004); // Retorna false, ou seja, sucesso echo false; Redireciona(''.$URLSHARE.''); }else{ //AbreAlerta("Erro! Ouve um erro ao ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } }else{ //Sweet('Atenção!!!', 'Você já deu sua Curtida para '.$dados['titulo'].'!', 'warning', 'Fechar'); //AbreAlerta("Ops! Você já deu sua Curtida para ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } } Só preciso para quando clicar uns dos botão ele salvar sem precisar carregar a página...
       
      Se ter um forma diferente para fazer fico grato pelas dicas que puderem dar ai..
       
       
    • By mark1978
      Boa noite srs, tem o código abaixo e esta funcionando normal e carregando o Qrcode no HTML na soma.
      Porém gostaria de alterar e que fosse da seguinte forma:
      Se "totalServico" for menor que "totalProdutos" e diferente de zero então carregue o Qr Code com esse valor
      Se não o valor for "0,00" carregue o valor "totalProdutos". Essa finalidade é para ter uma opção de desconto.
       
      <?php use Piggly\Pix\StaticPayload; class Os_model extends CI_Model { public function getProdutos($id = null) { $this->db->select('produtos_os.*, produtos.*'); $this->db->from('produtos_os'); $this->db->join('produtos', 'produtos.idProdutos = produtos_os.produtos_id'); $this->db->where('os_id', $id); return $this->db->get()->result(); } public function getServicos($id = null) { $this->db->select('servicos_os.*, servicos.nome, servicos.preco as precoVenda'); $this->db->from('servicos_os'); $this->db->join('servicos', 'servicos.idServicos = servicos_os.servicos_id'); $this->db->where('os_id', $id); return $this->db->get()->result(); } public function valorTotalOS($id = null) { $totalServico = 0; $totalProdutos = 0; if ($servicos = $this->getServicos($id)) { foreach ($servicos as $s) { $totalServico = $totalServico + $s->preco; } } if ($produtos = $this->getProdutos($id)) { foreach ($produtos as $p) { $totalProdutos = $totalProdutos + $p->subTotal; } } return ['totalServico' => $totalServico, 'totalProdutos' => $totalProdutos]; } public function getQrCode($id, $pixKey, $emitente) { if (empty($id) || empty($pixKey) || empty($emitente)) { return; } $result = $this->valorTotalOS($id); $amount = round(floatval($result['totalServico'] + $result['totalProdutos']), 2); if ($amount <= 0) { return; } $pix = (new StaticPayload()) ->applyValidCharacters() ->applyUppercase() ->setPixKey(getPixKeyType($pixKey), $pixKey) ->setMerchantName($emitente->nome, true) ->setMerchantCity($emitente->cidade, true) ->setAmount($amount) ->setTid($id) ->setDescription(sprintf("%s OS %s", $emitente->nome, $id), true); return $pix->getQRCode(); } }  

    • By manolegal
      Olá amigos(as) do Fórum.
      Tenho um número inteiro no PHP e preciso inseri-lo no Postgresql com 02 casas decimais.
      Defini o campo no Postgresql do tipo numeric(14,2)
      O valor está assim no PHP:
      2961966 Preciso gravar no BD da seguinte maneira:
      29619.66 Porém está gravando da seguinte forma:
      2961966.00 Tentei utilizando number_format, porém não consegui:
      $numero_bd = number_format($numero, '.', ''); $numero_bd = number_format($numero,2,"."); $numero_bd = number_format($numero,2,","numerovalor_ref_15,2,",","."); Caso alguém possa me ajudar, desde já agradeço.
    • By dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
×

Important Information

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