Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cleimarlemes

COMO BLOQUEAR ACESSO DE UMA PESSOA

Recommended Posts

boa tarde.. estou com duvida meu caso é o seguinte.. tenho uma tabela de cadastro_pessoas.. nesta tabela tenho o campo "situacao" onde armazena os dados vindos do form de cadastro_pessoas.php  do radio_buton com valores 1 = sim e 2 = não .

tenho o form liberar.php que quero que faça a checagem deste campo na tabela se for 1 apareça a mensagem ACESSO LIBERADO.. e se for 2 ACESSO BLOQUEADO PELA EMPRESA. FAVOR LIGAR N. .....  ......

já tentei de tudo e não da certo..

segue form liberar.php


 

<? session_start();
if(!isset($_SESSION["usuarioNome"]) and !isset($_SESSION["usuarioNome"]))
{
    header("Location:index.php");exit;
    }else {
    echo "Usuario: ". $_SESSION['usuarioNome'];
    }
?>
<br> <a href="sair.php">Sair</a>
<HTML>
<HEAD>
 <TITLE>LIBERACAO</TITLE>
     <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="css/style.css">
    <style type="text/css">
    .teste {
    font-size: 9px;
}
    </style>
</HEAD>
<BODY>
<table width="100%" border="0" cellspacing="1" cellpadding="1">
  <tr>
    <th scope="col"><ul class="nav nav-tabs">
  <li role="presentation" class="active"><a href="index.php">INICIO</a></li>
  <li role="presentation"><a href="cadastro_pessoas.php">CADASTRO DE PESSOAS</a></li>
  <li role="presentation"><a href="entrada.php">LIBERAR ENTRADA</a></li>
  <li role="presentation"><a href="saida.php">LIBERAR SAIDA</a></li>
  <li role="presentation"><a href="listar.php">RELATORIO DE ENTRADA E SAIDA</a></li>
  <li role="presentation"><a href="list_cadastros.php">RELATORIO DE CADASTROS</a></li>  
</ul> </th>
  </tr>
</table>
<p>
  <?php
// variáveis para conexão em LOCALHOST
 $conexao = mysqli_connect('mysql.hostinger.com.br', 'u8_polo', 'q12345u5', 'u5_polo');
 
   if (mysqli_connect_errno()){
      echo "falha ao conectar: ". mysqli_connect_error();
   die();
   }
 ?>
 
  <?php
  $tipo=$_POST['tipo'];
  $situacao=$_POST['situacao'];
  $nome=$_POST['nome'];
  $identidade=$_POST['identidade'];
  $placa=$_POST['placa'];
  $veiculo=$_POST['veiculo'];
  $cidade=$_POST['cidade'];
  $uf=$_POST['uf'];
  $empresa=$_POST['empresa'];
 
  $sql = "INSERT INTO tb_entrada(tipo,situacao,nome,identidade,placa,veiculo,cidade,uf,empresa)VALUES ('{$tipo}', '{$situacao}','{$nome}', '{$identidade}','{$placa}', '{$veiculo}', '{$cidade}', '{$uf}', '{$empresa}')";
 
  $resultado = mysqli_query($conexao, $sql);
 
  if ($resultado['situacao'] == 1) {
 
   
  echo "<h1><kbd><strong>ACESSO LIBERADO. SEJA BEM VINDO AO POLO TEXTIL DE INHUMAS.</h1></kbd></strong>";
 
  }
 
  else
 
  echo "<h1>ERRO AO LIBERAR ACESSO....</h1>";
  mysqli_close($conexao);
?>
</p>
</BODY>
</HTML>

obs.. a $session e para o usuario logado no sistema.. e não a pessoa que vai ser liberada..

 

quero que o form veja na tabela tb_cadastro se o usuario tal que vai ser liberado tem a opcao 1 ou 2 e retorna a mensagem e prossegue com o envio do form.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php
//Query da inserção
$sql_insert = "INSERT INTO tb_entrada(tipo,situacao,nome,identidade,placa,veiculo,cidade,uf,empresa)VALUES ('$tipo', '$situacao','$nome', 
'$identidade','$placa', '$veiculo', '$cidade', '$uf', '$empresa')";
//executando a inserção
$resultado_insert = mysqli_query($conexao, $sql_insert);
//verificando se a inserção fio feita com sucesso
if($resultado_insert){
  //Query para buscar a situação
$sql_busca = "SELECT situacao FROM tb_entrada WHERE nome = '$nome'";
  //Executandio a query de busca
  $resultado_busca = mysqli_query($conexao, $sql_busca);
  //Iniciando um loop para ver o resultado
 while($row = mysqli_fetch_array($resultado_busca)){
   //Se stiaucao for true
  if ($row['situacao'] == 1) {
 
   
  echo "<h1><kbd><strong>ACESSO LIBERADO. SEJA BEM VINDO AO POLO TEXTIL DE INHUMAS.</h1></kbd></strong>";
 
  }
 //Se não for true
  else{
 
  echo "<h1>ERRO AO LIBERAR ACESSO....</h1>";
 } 
 }
  //Caso não tenho sido inserido no banco
  echo 'Não foi possível cadastrar entrada';
 }
?>

Tenta desse modo, você não esta fazendo a consulta, da uma olhada nisso, se não for isso, está bem próximo, só dar aquela adaptada básica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz o que você postou ae.. mas agora todos que tento fazer a entrada aparece a mensagem..

erro ao liberar acesso....

Não foi possível cadastrar entrada

 

sera que tem algo a ver com o select ae. ?

//Query para buscar a situação
$sql_busca = "SELECT situacao FROM tb_entrada WHERE nome = '$nome'";
  //Executandio a query de busca
  $resultado_busca = mysqli_query($conexao, $sql_busca);
  //Iniciando um loop para ver o resultado
 while($row = mysqli_fetch_array($resultado_busca)){
   //Se stiaucao for true
  if ($row['situacao'] == 1) {
 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta ver se trocando comando:

Citar

mysqli_query($query);

por

Citar

$conecta->query($query)

 

Funciona.

 

Ah, pra fazer essa parte cadastrar depois, é só colocar o comando que executa a $sql_insert dentro da verificação.

 

Mais ou menos isso, se os campos do banco de dados estiverem corretos é pra funcionar, se não der, coloca:

error_reporting(E_ALL); no inicio da página e manda os erros aqui.

<?php
//Query da inserção
$sql_insert = "INSERT INTO tb_entrada(tipo,situacao,nome,identidade,placa,veiculo,cidade,uf,empresa)VALUES ('$tipo', '$situacao','$nome', 
'$identidade','$placa', '$veiculo', '$cidade', '$uf', '$empresa')";

  //Query para buscar a situação
$sql_busca = "SELECT situacao FROM tb_entrada WHERE nome = '$nome'";
  //Executandio a query de busca
  $resultado_busca = $conexao->query($sql_busca);
  //Iniciando um loop para ver o resultado
 while($row = mysqli_fetch_array($resultado_busca)){
   //Se stiaucao for true
  if ($row['situacao'] == 1) {
 //executando a inserção
$resultado_insert = $conexao->query($sql_insert);
   
  echo "<h1><kbd><strong>ACESSO LIBERADO. SEJA BEM VINDO AO POLO TEXTIL DE INHUMAS.</h1></kbd></strong>";
 
  }
 //Se não for true
  else{
 
  echo "<h1>ERRO AO LIBERAR ACESSO....</h1>";
 } 
 
  //Caso não tenho sido inserido no banco
  echo 'Não foi possível cadastrar entrada';
 }
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo ele da o erro que nao pode liberar e mesmo assim ta cadastrando no banco de dados.. e nao era pra fazer isso. acho q ele ta passando na frente o cadastro pra depois fazer a consulta ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas tipo.. ele tem que verificar se a pessoa ta liberado ou nao é na tb_cadastro .. pra depois cadastrar na tb_entrada.. o select ae ta buscando na tb_entrada eu mudei pra tb_cadastro e da erro.

 

$sql_busca = "SELECT situacao FROM tb_entrada WHERE nome = '$nome',";

mudei pra

 

$sql_busca = "SELECT situacao FROM tb_cadastro WHERE nome = '$nome',";

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /home/u844171755/public_html/polo/liberar.php on line 73

 

 while($row = mysqli_fetch_array($resultado_busca));{

linha 73

Compartilhar este post


Link para o post
Compartilhar em outros sites
14 minutos atrás, cleimarlemes disse:

$sql_busca = "SELECT situacao FROM tb_cadastro WHERE nome = '$nome',";

 

E essa virgula no final da query ? (tira ela).

 

5 minutos atrás, cleimarlemes disse:

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /home/u844171755/public_html/polo/liberar.php on line 73

 

Esse erro significa que a consulta tem parâmetros errados, no caso, a vírgula provavelmente, ou se não for isso os nomes dos campos ou da tabela estão errados.

 

Veja os erros do error_reporting(E_ALL)e manda aqui. ~~~desculpa isso eu ja tinha escrito antes de você mandar

 

Se não houver erros nos nomes das tabelas (daria erro com SQL), ou no nomes dos campos (daria o mesmo erro) , não tem como estar dando erro

 

Também pode ser feito isso: Execute a query direto no banco pra ver se ela traz  os dados e se não trouxer, quais vej aquais sãoos erros.

 

Pesquise por meio de descobrir erro no código, utilizar os comandos error_reporting(), var_dump, Debug Backtrace pode servir pra você achar onde está o erro de forma mais eficiente, as vezes colocar um trecho do código pra que encontrem o erro é a solução mais demorada.

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, cleimarlemes disse:
MySQL retornou um conjunto vazio (ex. zero registros). ( Consulta levou 0.0001 segundos )

SELECT situacao
FROM tb_cadastro
WHERE nome = '$nome'
LIMIT 0 , 30

 

 Precisa ter um valor de parametro, qual é o $nome ?, senão vai retornar 0 mesmo.

 

Tamos chegando perto agr kk

Compartilhar este post


Link para o post
Compartilhar em outros sites

o nome do cliente você fala ou do campo.. se for do campo é "nome"  mesmo.. SE for o campo "situacao" tb antes de eu querer colocar isso pra dar uma melhorada no sistema tava tudo rodando perfeito kkk se quiser olhar.. www.webradiosaudades.esy.es/polo 

 

login de teste: cleimar@hotmail.com senha.: 123  no caso é o menu de LIBERAR entrada .

Compartilhar este post


Link para o post
Compartilhar em outros sites

É  o nome do cliente que você quer buscar, a query precisa dessa sintaxe:

 

SELECT campo
FROM tabela
WHERE campo = 'valor'
LIMIT 0 , 30

//NO CASO

SELECT situacao
FROM tb_cadastro
WHERE nome = 'o nome do cliente que foi colocado no formulário'
LIMIT 0 , 30

O nome é o valor que você recebe com isso aqui:

 

Citar

  $nome=$_POST['nome'];

 

Sacou ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
SELECT situacao
FROM tb_cadastro
WHERE nome = 'WAGNER ANTONIO SANTOS'

se eu fizer isso no sql ele me retorna que o cliente tem a situacao "2" que e proibido entrar,, qndo entro com a identidade dele no sistema ele fala acesso proibido e tal e mesmo assim cadastra no banco de dados de entrada.. mas o select tem que estar com o nome dele se coloco so a variavel "nome" ele nao acha nada da erro. e cadastra ele no banco. kkkkkkkk to ficando doido ja.. e tipo nao sei nada de php to quebrando a cabeça..

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho q consegui..

assim:

 

$sql_busca = "SELECT situacao FROM tb_cadastro WHERE nome = '$nome'";

agora falta arrumar pra ele nao estar cadastrando no banco de dados..

 

o codigo inteiro do form.. liberar.php

 

<? error_reporting(E_ALL);  ?>
<? session_start();
if(!isset($_SESSION["usuarioNome"]) and !isset($_SESSION["usuarioNome"]))
{
	header("Location:index.php");exit;
	}else {
	echo "Usuario: ". $_SESSION['usuarioNome'];
	}
?> 
<br> <a href="sair.php">Sair</a>

<HTML>
<HEAD>
 <TITLE>LIBERACAO</TITLE>
     <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="css/style.css">
    <style type="text/css">
    .teste {
	font-size: 9px;
}
    </style>
</HEAD>
<BODY>
<table width="100%" border="0" cellspacing="1" cellpadding="1">
  <tr>
    <th scope="col"><ul class="nav nav-tabs">
  <li role="presentation" class="active"><a href="index.php">INICIO</a></li>
  <li role="presentation"><a href="cadastro_pessoas.php">CADASTRO DE PESSOAS</a></li>
  <li role="presentation"><a href="entrada.php">LIBERAR ENTRADA</a></li>
  <li role="presentation"><a href="saida.php">LIBERAR SAIDA</a></li>
  <li role="presentation"><a href="listar.php">RELATORIO DE ENTRADA E SAIDA</a></li>
  <li role="presentation"><a href="list_cadastros.php">RELATORIO DE CADASTROS</a></li>  
</ul>&nbsp;</th>
  </tr>
</table>
<p>
  <?php

// variáveis para conexão em LOCALHOST
 $conexao = mysqli_connect('mysql.hostinger.com.br', 'u8', 'q5', 'u_polo');
 
   if (mysqli_connect_errno()){
      echo "falha ao conectar: ". mysqli_connect_error();
   die();
   }
 ?>
  
  <?php
  $tipo=$_POST['tipo'];
  $situacao=$_POST['situacao'];  
  $nome=$_POST['nome'];
  $identidade=$_POST['identidade'];
  $placa=$_POST['placa'];
  $veiculo=$_POST['veiculo'];
  $cidade=$_POST['cidade'];
  $uf=$_POST['uf'];
  $empresa=$_POST['empresa'];
  
 
//Query da inserção
$sql_insert = "INSERT INTO tb_entrada(tipo,situacao,nome,identidade,placa,veiculo,cidade,uf,empresa)VALUES ('$tipo', '$situacao', '$nome', 
'$identidade', '$placa', '$veiculo', '$cidade', '$uf', '$empresa')";
//executando a inserção
$resultado_insert = mysqli_query($conexao, $sql_insert);
//verificando se a inserção fio feita com sucesso
if($resultado_insert){
  //Query para buscar a situação
$sql_busca = "SELECT situacao FROM tb_cadastro WHERE nome = '$nome'";
  //Executandio a query de busca
  $resultado_busca = mysqli_query($conexao, $sql_busca);
  //Iniciando um loop para ver o resultado
 while($row = mysqli_fetch_array($resultado_busca)){
   //Se stiaucao for true
  if ($row['situacao'] == 1) {
 
   
  echo "<h1><kbd><strong>ACESSO LIBERADO. SEJA BEM VINDO AO POLO TEXTIL DE INHUMAS.</h1></kbd></strong>";
 
  }
 //Se não for true
  else{
 
  echo "<h1>ERRO AO LIBERAR ACESSO....</h1>";
 } 
 }
  //Caso não tenho sido inserido no banco
  echo 'Não foi possível cadastrar entrada';
 }
?>
  
  
  
  

</BODY>
</HTML>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Só mudei duas linhas, tirei  '

if($resultado_insert){

 

e coloquei o insert dentro da verificação com IF, testa agora pra ver se da boa

<? error_reporting(E_ALL);  ?>
<? session_start();
if(!isset($_SESSION["usuarioNome"]) and !isset($_SESSION["usuarioNome"]))
{
	header("Location:index.php");exit;
	}else {
	echo "Usuario: ". $_SESSION['usuarioNome'];
	}
?> 
<br> <a href="sair.php">Sair</a>

<HTML>
<HEAD>
 <TITLE>LIBERACAO</TITLE>
     <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="css/style.css">
    <style type="text/css">
    .teste {
	font-size: 9px;
}
    </style>
</HEAD>
<BODY>
<table width="100%" border="0" cellspacing="1" cellpadding="1">
  <tr>
    <th scope="col"><ul class="nav nav-tabs">
  <li role="presentation" class="active"><a href="index.php">INICIO</a></li>
  <li role="presentation"><a href="cadastro_pessoas.php">CADASTRO DE PESSOAS</a></li>
  <li role="presentation"><a href="entrada.php">LIBERAR ENTRADA</a></li>
  <li role="presentation"><a href="saida.php">LIBERAR SAIDA</a></li>
  <li role="presentation"><a href="listar.php">RELATORIO DE ENTRADA E SAIDA</a></li>
  <li role="presentation"><a href="list_cadastros.php">RELATORIO DE CADASTROS</a></li>  
</ul>&nbsp;</th>
  </tr>
</table>
<p>
  <?php

// variáveis para conexão em LOCALHOST
 $conexao = mysqli_connect('mysql.hostinger.com.br', 'u8', 'q5', 'u_polo');
 
   if (mysqli_connect_errno()){
      echo "falha ao conectar: ". mysqli_connect_error();
   die();
   }
 ?>
  
  <?php
  $tipo=$_POST['tipo'];
  $situacao=$_POST['situacao'];  
  $nome=$_POST['nome'];
  $identidade=$_POST['identidade'];
  $placa=$_POST['placa'];
  $veiculo=$_POST['veiculo'];
  $cidade=$_POST['cidade'];
  $uf=$_POST['uf'];
  $empresa=$_POST['empresa'];
  
 
//Query da inserção
$sql_insert = "INSERT INTO tb_entrada(tipo,situacao,nome,identidade,placa,veiculo,cidade,uf,empresa)VALUES ('$tipo', '$situacao', '$nome', 
'$identidade', '$placa', '$veiculo', '$cidade', '$uf', '$empresa')";

  //Query para buscar a situação
$sql_busca = "SELECT situacao FROM tb_cadastro WHERE nome = '$nome'";
  //Executandio a query de busca
  $resultado_busca = mysqli_query($conexao, $sql_busca);
  //Iniciando um loop para ver o resultado
 while($row = mysqli_fetch_array($resultado_busca)){
   //Se stiaucao for true
  if ($row['situacao'] == 1) {
 //executando a inserção -> ONDE INSERE FIO MUDADA PRA CÁ, DENTRO D0 LOOP E DA VERIFICAÇAO SE A SITUAÇÃO É = 1
	$resultado_insert = mysqli_query($conexao, $sql_insert);
   
  echo "<h1><kbd><strong>ACESSO LIBERADO. SEJA BEM VINDO AO POLO TEXTIL DE INHUMAS.</h1></kbd></strong>";
 
  }
 //Se não for true
  else{
 
  echo "<h1>ERRO AO LIBERAR ACESSO....</h1>";
 } 
 }
?>
  
  
  
  

</BODY>
</HTML>

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

blz.. agora sim deu tudo certo..   quero liberar esse sistema depois pra galera se alguem quiser melhorar ele e tal.. agradeço sua ajuda..  se aparecer mais alguma duvida aki.. eu peço socorro pra você.. OBRIGADO!!!!

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

a mais uma duvida.. quero colocar este alerta dentro do echo.... mas da erro..

http://webradiosaudades.esy.es/polo/alerta.php

 

  <div class="alert alert-danger fade in">
    <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
    <strong>ACESSO PROIBIDO!</strong> Por favor retorne e entre em contato com a &quot;DIRETORIA&quot; ou &quot;CENTRAL DE MONITORAMENTO&quot;. Obrigado!
  </div>

esse e o codigo do alerta..

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
    • Por First
      Olá a todos!
       
      Quando eu tento fazer o login me mostra esse erro "Could not log you in."; Alguém sabe me ajudar a resolver esse problema no meu código?
      <?php require_once("core/init.php"); if (Input::exists()) { if (Token::check(Input::get("token"))) { $validate = new Validate(); $validation = $validate->check($_POST, array( "username" => array("required" => true), "password" => array("required" => true) )); if ($validation->passed()) { $user = new User(); $remember = (Input::get("remember")) === "on" ? true : false; $login = $user->login(Input::get("username"), Input::get("password"), $remember); if ($login) { Session::flash("home", "Welcome back!"); Redirect::to("index.php"); } else { echo "Could not log you in."; } } else { foreach ($validation->errors() as $error) { echo $error."<BR>"; } } } } ?> <form action="" method="POST"> <div class="field"> <label for="username">Username</label> <input type="text" name="username" id="username"> </div> <div class="field"> <label for="password">Password</label> <input type="password" name="password" id="password"> </div> <div class="field"> <label for="remember"> <input type="checkbox" name="remember" id="remember"> Remember me </label> </div> <input type="hidden" name="token" value="<?php echo Token::generate(); ?>"> <input type="submit" value="Log in"> </form>  
       
      Desde já obrigado.
×

Informação importante

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