Jump to content
elisandrodceza

Comparar variavel com valores diferentes em outro .php

Recommended Posts

Alguma ideia para pesquisar os $id recebidos por get em um arquivo diferente ? como se percebe no código funcional a baixo, os $id estão duplicados para funções diferente. Quero adicionar eles em outro arquivo para uma melhor organização com as variáveis $id e $client,  mas de uma maneira que possa pesquisar tanto qual é a $id e o $client para ser informado por email quando o client ler o qrcode, quanto se a $id está na lista para ser redirecionado.

 

 

ARQUIVO auth_code.php

 

<?php
    $id = $_GET['id'];
    $ip = $_SERVER['REMOTE_ADDR'];
    $browser = $_SERVER['HTTP_USER_AGENT'];
    $to = "suporte@eatech.inf.br";
    $success = false;


        if ($id == '2623F52846F8A03DA4ADFA9392486807') $client = "Card Contato";
        if ($id == '2BDBDDA17456A1060E156BE7A487FC') $client = "Client 1";
        if ($id == 'E7EA229948A4997C2F72219D6A2764') $client = "Client 2";
        if ($id == '07118879907903166B2C3BE7408EFD') $client = "Client 3";
        if ($id == 'FED09C7CC40ACD77A0BDEA57E894A3') $client = "Client 4";
        if ($id == 'C042D3187B52E87D6E6196567101EF') $client = "Client 5";
        if ($id == '7DCD0215BEC8AF587AD886E407A485') $client = "Client 6";

 

    $messagem = "Cliente: $client<br><br>ID: $id<br><br>IP: $ip<br><br>Browser: $browser"; 

    $assunto = "qrCode digitalizado";
    $headers = "MIME-Version: 1.0\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\n";
    $headers .= "From: $client\n";
    
    $success = mail($to, $assunto, $messagem, $headers);
    
    if ($id == '2623F52846F8A03DA4ADFA9392486807')
        { header('Location: download/contato.vcf');}

 

    else
        if (


        $id == '2BDBDDA17456A1060E156BE7A487FC' # Client 1
        or $id == 'E7EA229948A4997C2F72219D6A2764' # Client 2
        or $id == '07118879907903166B2C3BE7408EFD' # Client 3
        or $id == 'FED09C7CC40ACD77A0BDEA57E894A3' # Client 4
        or $id == 'C042D3187B52E87D6E6196567101EF' # Client 5
        or $id == '7DCD0215BEC8AF587AD886E407A485' # Client 6

        )
        { header('Location: download/index.php?id=' . $id. '.pdf');}

 

    else
        { echo "<script>alert('Este qrCode ainda não está cadastrado no sistema, tente novamente mais tarde!');history.go(-1) </script>";}
?>

Share this post


Link to post
Share on other sites

@elisandrodceza

 

Se eu entendi direito, o que você precisa é separar as validações em arquivos correto?

 

O exemplo que fiz abaixo remove os IF de validação do ID em outros dois arquivos e estes dois arquivos são incluidos dentro do arquivo principal através do comando INCLUDE, acho que com isso você pode fazer o que deseja, separar os códigos como solicitou "Quero adicionar eles em outro arquivo para uma melhor organização com as variáveis $id e $client", com os includes você pode fazer o que quiser dentro dos arquivos, exemplo, você recebe o $ID via $_GET, então no include auth_id1.php você pode fazer tudo o que desejar para validar, desde select em base para ver se acha, quanto validações como os IF para ver se o código é válido para redirecionar o usuário, o código fica mais "limpo" mas mantem toda a funcionalidade.

 

Veja se o artigo te ajuda: Como funciona o INCLUDE.

 

Seguindo a explicação que fiz o seu código ficaria como abaixo:

auth_code.php
<?php
    $id = $_GET['id'];
    $ip = $_SERVER['REMOTE_ADDR'];
    $browser = $_SERVER['HTTP_USER_AGENT'];
    $to = "suporte@eatech.inf.br";
    $success = false;
	
    include "auth_id1.php";

    $messagem = "Cliente: $client<br><br>ID: $id<br><br>IP: $ip<br><br>Browser: $browser"; 

    $assunto = "qrCode digitalizado";
    $headers = "MIME-Version: 1.0\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\n";
    $headers .= "From: $client\n";
    
    $success = mail($to, $assunto, $messagem, $headers);
	
    include "auth_id2.php";
    
?>

auth_id1.php
<?php
if ($id == '2623F52846F8A03DA4ADFA9392486807') $client = "Card Contato";
if ($id == '2BDBDDA17456A1060E156BE7A487FC') $client = "Client 1";
if ($id == 'E7EA229948A4997C2F72219D6A2764') $client = "Client 2";
if ($id == '07118879907903166B2C3BE7408EFD') $client = "Client 3";
if ($id == 'FED09C7CC40ACD77A0BDEA57E894A3') $client = "Client 4";
if ($id == 'C042D3187B52E87D6E6196567101EF') $client = "Client 5";
if ($id == '7DCD0215BEC8AF587AD886E407A485') $client = "Client 6";
?>

auth_id2.php
<?php
if ($id == '2623F52846F8A03DA4ADFA9392486807') {
    header('Location: download/contato.vcf');
} else {
    if ($id == '2BDBDDA17456A1060E156BE7A487FC' # Client 1
    or  $id == 'E7EA229948A4997C2F72219D6A2764' # Client 2
    or  $id == '07118879907903166B2C3BE7408EFD' # Client 3
    or  $id == 'FED09C7CC40ACD77A0BDEA57E894A3' # Client 4
    or  $id == 'C042D3187B52E87D6E6196567101EF' # Client 5
    or  $id == '7DCD0215BEC8AF587AD886E407A485' # Client 6 ) {
        header('Location: download/index.php?id=' . $id. '.pdf');
    } else {
        echo "<script>alert('Este qrCode ainda não está cadastrado no sistema, tente novamente mais tarde!');history.go(-1) </script>";
    }
}
?>

Espero ter ajudado.

 

Att.

Felipe Coutinho

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 Jefferson andre
      Saudações mestres,
       
      Como faço para ajustar o programa abaixo para calcular a diferença entre duas variaveis que armazenam horario no ajax quando ocorre um evento onblur?
       
      O programa funciona com numeros mas nao com tempo.
      <html> <body> <script> function calcular() { var num1 = Number(document.getElementById("hora_saida").value); var num2 = Number(document.getElementById("hora_entrega").value); var elemResult = document.getElementById("resultado"); if (elemResult.textContent === undefined) { elemResult.textContent = "O resultado eh " + String(num1 + num2) + "."; } else { // IE elemResult.innerText = "O resultado eh " + String(num1 + num2) + "."; } } </script> <label>Horario de saida</label> <input type ="time" name="hora_saida" id="hora_saida"onblur="calcular();"> <label>Horario da entrega</label> <input type ="time" name="hora_entrega" id="hora_entrega"onblur="calcular();"> <div id="resultado"></div> <span id="resultado"></span> </body> </html>  
    • By Gustavuh
      Boa tarde.
       
      Estou carregando os dados do usuário numa session.
       
      Na página de redirecionamento, jogo essa session para uma váriável.
       
      Quero por BEM VINDO, {nome_do_usuario}, mas aparece o erro UNDEFINED INDEX: USER_NAME.
       
      Segue codigo...
       
      if(!isset($_SESSION['userlogin'])){ unset($_SESSION['userlogin']); header("Location: index.php"); exit; }else{$userlogin = $_SESSION['userlogin'];} <img src="images/user.png" alt=""> <span> Bem vindo(a), <strong style="font-style: italic;"><?= $userlogin['user_apelido']; ?></strong></span> Como resolver esse caso tão simples?

    • By EstilloWeb
      Está ocorrendo um erro em meu comando MySQL na ordenação dos resultados. O código é o seguinte:
      $sql_imos4 = "Select DISTINCT imovel FROM propostas ORDER BY id DESC"; $exe_imos4 = mysqli_query($conexao, $sql_imos4); O objetivo é listar uma única vez um imóvel com proposta, mesmo que haja dois ou mais registros, sempre ordenado mais recente. O que está ocorrendo quando o imóvel tem mais de uma proposta cadastrada, a ordenação está sendo feita pelo ID da proposta mais antiga.
      Exemplo:
      imóvel ref. 4528 tem duas propostas, sendo que a mais recente tem o ID 235 porém aparece na listagem abaixo do imóvel ref. 4325, que tem uma só proposta e ID 230.
      O resultado deveria estar invertido neste caso.
      Onde pode estar o erro? Agradeço a ajuda.
    • By tii3030
      Olá, gostaria de saber qual a melhor maneira de selecionar e verificar a senha hash(senha) em um banco de dados e comparar com a senha inserida pelo usuário em um formulário de login. É mais adequado armazenar no BD o salt ? No exemplo abaixo eu criei o hash da senha antes de selecionar no banco:
      <?php include('conf.php'); $email = 'lala@123.com'; $senha = 'lala.123'; $custo = '08'; $salt = 'Cf1f11ePArKlBJomM0F6aJ'; $hash = crypt($senha, '$2a$' . $custo . '$' . $salt . '$'); $query_select = "SELECT email, password FROM usuarios WHERE email = '$email' AND password = '$hash'"; $select = mysqli_query($conexao,$query_select); if (mysqli_num_rows($select) == 1) { echo "Login Permitido"; } else { echo "Login ou senha invalidos"; } ?> Já neste exemplo eu selecionei o hash no banco para depois comparar com a senha inserida no formulário utilizando o password_verify():
      <?php #----------------- INCLUDING FILE --> "conf.php" include('conf.php'); if (isset($_POST['submit'])) { $email = mysqli_real_escape_string($conexao, $_POST['email']); $password = mysqli_real_escape_string($conexao, $_POST['password']); $query_select_email = "SELECT email FROM usuarios WHERE email = '$email'"; $select_email = mysqli_query($conexao,$query_select_email); $query_select_password = "SELECT password FROM usuarios"; $select_password = mysqli_query($conexao,$query_select_password); while($array = mysqli_fetch_array($select_password)) { $logarray = $array['password']; if (password_verify($password, $logarray) && mysqli_num_rows($select_email) == 1) { echo "Login permitido"; } } } ?> Aceito qualquer dica relacionado a segurança e para melhorar o código, desde já agradeço.
    • By tii3030
      Olá pessoal, desenvolvi um pequeno código em PHP com a função de verificar e validar usuário e senha de um formulário, juntamente com o meu banco de dados MySql.
      Gostaria de saber como aprimorar o meu código para torna-lo mais seguro e mais próximo de algo "profissional". Lembrando que minha senha no banco está criptografada (PASSWORD_BCRYPT).
       
      <?php
          #----------------- INCLUDING FILE --> "conf.php"
          include('conf.php');
              if (isset($_POST['submit'])) {
             
      #--------------------------------INPUTS ---------------------------------------------#
                  $email = mysqli_real_escape_string($conexao, $_POST['email']);
                  $password = mysqli_real_escape_string($conexao, $_POST['password']);
      #-----------------------#----------------------#-----------------_#-------------------#
                  $query_select_email = "SELECT email FROM usuarios WHERE email = '$email'";
                  $select_email = mysqli_query($conexao,$query_select_email);
                  $query_select_password = "SELECT password FROM usuarios";
                  $select_password = mysqli_query($conexao,$query_select_password);
                  while($array = mysqli_fetch_array($select_password)) {
                  $logarray = $array['password'];
                  
                      if (password_verify($password, $logarray)) {
                          if (mysqli_num_rows($select_email) == 1) {
                              
                          $_SESSION['email'] = $email;
                          header('location: XXX.html');
                          exit();
                          }
                      }
                      else {
                          echo "Loguin ou senha incorretos";
                      }
                  $logarray = '0';
                  }
              }
      ?>
×

Important Information

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