Ir para conteúdo

POWERED BY:

Arquivado

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

Thiago Caesar

Loga e desloga rapidinho ...

Recommended Posts

Pessoal sou novo em php mysqli, estou com problemas de login , o problema se dá quando coloco no servidor ... quando estava em servidor local estava tudo funcionando normal ... ele loga e sai rapidinho ... como não manjo de nada estou meio perdido ...
se alguem pudesse me ajudar ...

Tenho o seguinte codigo:

<?php
require("config/connection.php");
require("config/protection.php");
protegerAdmin() ;
?>
<?php
if(isset($_GET["action"]) AND $_GET["action"] == "sair") {
exit();
}
?>
<!doctype html>
<html>
<head>
<style type="text/css">
#tudo {
display: table;
height: 768px;
width: 1024px;
margin-right: auto;
margin-left: auto;
position: relative;
z-index: 1;
}
#btsair {
position: absolute;
width: 53px;
height: 22px;
z-index: 1;
left: 1136px;
top: 16px;
}
#titulopagina{
position: absolute;
width: 616px;
height: 30px;
z-index: 1;
left: 237px;
top: -10px;
}
body {
background-image: url(images/fundo3.jpg);
}
.centuryghotictitulo {
font-family: "Century Gothic";
color: #CE0418;
font-size: 24px;
}
.impactbtsair {
font-family: Impact;
font-size: 18px;
color: #B00;
}
#logo {
position: absolute;
width: 89px;
height: 67px;
z-index: 2;
left: 58px;
top: -26px;
}
#registros {
position: absolute;
width: 138px;
height: 36px;
z-index: 3;
left: 46px;
top: 52px;
color: #B30000;
font-weight: bold;
}
#quadrovermelho {
position: absolute;
width: 200px;
height: 300px;
z-index: 1;
left: 7px;
top: 32px;
background-color: #A60202;
background-image: url(images/fundo4.jpg);
}
#inserirusuario {
position: absolute;
width: 177px;
height: 35px;
z-index: 2;
left: 25px;
top: 119px;
}
#inserircliente {
position: absolute;
width: 173px;
height: 36px;
z-index: 2;
left: 25px;
top: 162px;
}
#inseririmovel {
position: absolute;
width: 171px;
height: 33px;
z-index: 2;
left: 25px;
top: 204px;
}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: none;
}
a:active {
text-decoration: none;
}
#apDiv1 {
position: absolute;
width: 1px;
height: 40px;
z-index: 4;
left: 958px;
top: -17px;
background-color: #A60202;
}
#apDiv2 {
position: absolute;
width: 200px;
height: 300px;
z-index: 5;
left: 237px;
top: 32px;
background-color: #D6D6D6;
background-image: url(images/fundo4.jpg);
}
#apDiv3 {
position: absolute;
width: 103px;
height: 47px;
z-index: 6;
left: 289px;
top: 50px;
font-family: "Century Gothic";
font-size: 24px;
color: #B30000;
font-weight: bold;
}
#apDiv4 {
position: absolute;
width: 176px;
height: 42px;
z-index: 7;
left: 256px;
top: 118px;
}
#apDiv5 {
position: absolute;
width: 170px;
height: 40px;
z-index: 8;
left: 255px;
top: 161px;
}
#apDiv6 {
position: absolute;
width: 166px;
height: 40px;
z-index: 9;
left: 255px;
top: 203px;
}
</style>
<meta charset="utf-8">
<title>::: PAINEL DE ADMIN :::</title>
</head>
<body>
<div id="tudo">
<div class="centuryghotictitulo" id="titulopagina">
Olá , seja bem vindo ao painel de admin</div>
<div id="logo"><img src="images/logo2.png" width="100" height="63"></div>
<div class="centuryghotictitulo" id="registros">REGISTROS</div>
<div id="quadrovermelho"></div>
<div id="apDiv2"></div>
<div id="apDiv6"><img src="images/btbuscarimoveis.png" width="165" height="35"></div>
<div id="apDiv4"><a href="listarusuarios.php"><img src="images/btlistarusuarios.png" width="165" height="35"></a></div>
<div id="apDiv5"><img src="images/btbuscarcliente.png" width="165" height="35"></div>
<div id="apDiv3">BUSCAS</div>
<div id="inserirusuario"><a href="registrarusuario.php"><img src="images/btinserirusuario.png" width="165" height="35"></a></div>
<div id="inserircliente"><a href="registrarclientes.php"><img src="images/btinserircliente.png" width="165" height="35"></a></div>
<div id="inseririmovel"><a href="registrarimoveis.php"><img src="images/btinseririmovel.png" width="165" height="35"></a></div>
<div id="apDiv1"></div>
</div>
<div id="btsair">
<a href="?action=sair"><img src="images/btsair.png" width="85" height="30"></a>
</div>
</body>
</html>
===========================================================================================
===========================================================================================
===========================================================================================
<?php
function protegerAdmin () {
if ($_SESSION["Permissao"] != 1) {
}
}
function protegerUser () {
if ($_SESSION["Permissao"] != 0) {
}
}
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você iniciou sessão?

 

session_start();

 

no sair, ele não destrói a sessão, então o usuário não sairia...

 

Pode mandar a página que confirma o logi do usuário, por favor?

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php

require("config/connection.php");


?>


<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>::: Login de Usuário :::</title>

<style type="text/css">

body {

background-image: url(images/fundo1.jpg);

}

.century_ghotic {

font-family: "Century Gothic";


}



#tudo {

display: table;

height: 768px;

width: 1024px;

margin-right: auto;

margin-left: auto;

position: relative;

z-index: 1;


}


#apDiv1 {

position: absolute;

width: 251px;

height: 28px;

z-index: 1;

color: #FFFFFF;

font-family: "Century Gothic";

font-size: 18px;

left: 65px;

top: -52px;

font-weight: bold;

}


#formulario {

position: absolute;

z-index: 1;

left: 437px;

top: 59px;

width: 187px;

}


</style>

</head>


<body>

<div id="tudo":>

<div id="formulario">

<div id="apDiv1">LOGIN DE USUÁRIO</div>

<form action="" method="post"/>

<br><br><br>



<label class="century_ghotic">

E-mail :

</label><br>

<input type="text" name="email" placeholder="Seu e-mail"/><br><br>



<label>

<span class="century_ghotic">Senha :</span> </label>

<br>

<input type="password" name="senha" placeholder="Senha"/><br><br><br>



<input name="button" type="image" value="Registrar" src="images/btentrar.png" width="80px" height="25"/>

</form>

</div>


</div>

</body>

</html>

<?php


if(isset($_POST["button"])){


$email = $_POST["email"];

$senha = $_POST["senha"];


if($email== "" || $senha=="" ){


echo "<script>alert ('Preencha todos os campos');</script>";


return true;

}


$select = $mysqli-> query("SELECT * FROM `usuarios` WHERE Email = '$email' AND Senha = '$senha'");

$row = $select-> num_rows;

$get =$select->fetch_array();


$perm = $get['Permissao'];


if ($row > 0) {

if ($perm == 1) {


session_start();

$_SESSION["Permissao"] = 1 ;



echo "<script>alert ;location.href='http://paineladmin.php'</script>";



}else{


session_start();

$_SESSION["Permissao"] = 0 ;



echo "<script>alert ;location.href='http://painelusuario.php'</script>";


}



}else{


echo "<script>alert ('Usuario ou Senha Incorretos');</script>";




}

}


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o seu erro é, o session_start() deve ficar no começo do seu código...

 

e em um arquivo que seja incluido em todos os outros, um exemplo é o config/connection.php ...

você iniciou uma sessão somente naquele arquivo, ao passar para os demais , não terá mais sessão...

 

no connections, na segunda linha após abrir <?php você coloca session_start();

Compartilhar este post


Link para o post
Compartilhar em outros sites

o seu erro é, o session_start() deve ficar no começo do seu código...

 

e em um arquivo que seja incluido em todos os outros, um exemplo é o config/connection.php ...

você iniciou uma sessão somente naquele arquivo, ao passar para os demais , não terá mais sessão...

 

no connections, na segunda linha após abrir <?php você coloca session_start();

Amigo agradeço sua atenção ... entao eu crio uma nova pagina php , coloco session_start(); e depois chamo ela com require ....

aqui na pagina de login ... eu deixo ele com session mesmo criando este novo arquivo ?

session_start();

$_SESSION["Permissao"] = 1 ;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você retira o session_start() dos demais arquivos,

e deixa o código session_start() em um arquivo global, no qual todos os outros o chamariam, como no caso do arquivo que faz conexão com banco de dados...

 

 

Mas se quiser criar um novo também, pode ser...

 

Só lembrando que o session_start() tem que estar no topo da página, ou seja, primeira linha, após o <?php já entra o session_start();

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo agradeço sua atenção ... entao eu crio uma nova pagina php , coloco session_start(); e depois chamo ela com require ....

aqui na pagina de login ... eu deixo ele com session mesmo criando este novo arquivo ?

session_start();

$_SESSION["Permissao"] = 1 ;

amigo , eu fiz mas mesmo assim nao esta funcionando .. inclusive tirei tdos os session_start(); para ver se ele ia retornar algum erro ... ele nao avisa nenhum erro ... e nao entra

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php session_start();


$serv = 'xxxxxxx';

$user = 'xxxx';

$pass = 'xxxxxx';

$data = 'xxxxxxxxxxxx';

// Conecta-se ao banco de dados MySQL

$mysqli = new mysqli($serv, $user, $pass, $data);

if ($mysqli->connect_error) {

echo "erro ao conectar ao banco";

exit();

}else{


}



?>




tirei de todas as paginas o session e coloquei ali em cima e mesmo assim nao funciona ... estranho que no local funcionava ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e agora da isso somente com o session_start na primeira linha do php no aqruivo global

 

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\inetpub\vhosts\fernandesesampaio.com.br\httpdocs\bd\login.php:1) inD:\inetpub\vhosts\fernandesesampaio.com.br\httpdocs\bd\config\connection.php on line 1

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\inetpub\vhosts\fernandesesampaio.com.br\httpdocs\bd\login.php:1) inD:\inetpub\vhosts\fernandesesampaio.com.br\httpdocs\bd\config\connection.php on line 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora vem outra questão...

 

Você não definiu uma Variável na sessão pra saber se o usuário está logado ou não...

 

então aconselho colocar uma variável como por exemplo

$_SESSION['logado'] = TRUE;

essa variável determinaria se o usuário está logado ou não...

 

Por exemplo...

if($_SESSION['logado'] == TRUE) {

echo"Usuário Logado";

}else {

echo"Usuário não logado";

}

 

Para definir, na parte do login ao certificar que o e-mail e senha estão corretos, defina a variável ...

 

if ($row > 0) {

if ($perm == 1) {

 

session_start();

$_SESSION["Permissao"] = 1 ;

 

 

echo "alert ;location.href='http://paineladmin.p...php'";

 

 

}else{

 

session_start();

$_SESSION["Permissao"] = 0 ;

 

 

echo "alert ;location.href='http://painelusuario...php'";

 

}

 

$_SESSION['logado'] = TRUE;

 

}else{

 

echo "alert ('Usuario ou Senha Incorretos');";

 

 

 

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos, eu tentei de tudo com as digas que vcs me deram e nada funcionou ... que puder me ajudar por email pois paço todo passo a passo para entenderem melhor a questão , acho que o treco eh mais embaixo

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.
       
      Por favor, me permita tirar uma dúvida com os amigos.

      Tenho um Formulário onde o Usuário digita todos os Dados necessários.

      Minha dúvida:
      --> como faço após o usuário digitar os dados e salvar, o Sistema chamar uma Modal ou mensagem perguntando se deseja imprimir agora ?

      Grato,
       
      Cesar
    • Por Carcleo
      Tenho uma abela de usuarios e uma tabela de administradores e clientes.
      Gostaria de uma ajuda para implementar um cadastro
       
      users -> name, login, passord (pronta) admins -> user_id, registratiom, etc.. client -> user_id, registratiom, etc...
      Queria ajuda para extender de user as classes Admin e Client
      Olhem como estáAdmin
      <?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Admin extends User {     use HasFactory;            protected $fillable = [         'name',         'email',         'password',         'registration'     ];      private string $registration;     public function create(         string $name,          string $email,          string $password,         string $registration     )     {         //parent::create(['name'=>$name, 'email'=>$email, 'password'=>$password]);         parent::$name = $name;         parent::$email = $email;         parent::$password = $password;         $this->registration = $registration;     } } User
      <?php namespace App\Models; // use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Illuminate\Database\Eloquent\Relations\BelongsToMany; class User extends Authenticatable {     /** @use HasFactory<\Database\Factories\UserFactory> */     use HasFactory, Notifiable;     static string $name;     static string $email;     static string $password;     /**      * The attributes that are mass assignable.      *      * @var list<string>      */     protected $fillable = [         'name',         'email',         'password',     ];          /**      * The attributes that should be hidden for serialization.      *      * @var list<string>      */     protected $hidden = [         'remember_token',     ];     /**      * Get the attributes that should be cast.      *      * @return array<string, string>      */     protected function casts(): array     {         return [             'email_verified_at' => 'datetime',             'password' => 'hashed',         ];     }          public function roles() : BelongsToMany {         return $this->belongsToMany(Role::class);     }       public function hasHole(Array $roleName): bool     {                 foreach ($this->roles as $role) {             if ($role->name === $roleName) {                 return true;             }         }         return false;     }         public function hasHoles(Array $rolesName): bool     {                 foreach ($this->roles as $role) {             foreach ($rolesName as $rolee) {             if ($role->name === $rolee) {                 return true;             }          }         }         return false;     }         public function hasAbility(string $ability): bool     {         foreach ($this->roles as $role) {             if ($role->abilities->contains('name', $ability)) {                 return true;             }         }         return false;     }     } Como gravar um Admin na tabela admins sendo que ele é um User por extensão?
      Tentei assim mas é claro que está errado...
      public function store(Request $request, Admin $adminModel) {         $dados = $request->validate([             "name" => "required",             "email" => "required|email",             "password" => "required",             "registration" => "required"         ]);         $dados["password"] =  Hash::make($dados["password"]);                  $admin = Admin::where("registration",  $dados["registration"])->first();                  if ($admin)              return                    redirect()->route("admin.new")                             ->withErrors([                                 'fail' => 'Administrador já cadastrados<br>, favor verificar!'                   ]);                            $newAdmin = $adminModel->create(                                    $dados['name'],                                    $dados['email'],                                    $dados['password'],                                    $dados['registration']                                 );         dd($newAdmin);         $adminModel->save();         //$adminModel::create($admin);                  return redirect()->route("admin.new")->with("success",'Cadastrado com sucesso');     }  
    • Por violin101
      Caros amigos, saudações.
       
      Gostaria de tirar uma dúvida com os amigos, referente a PDV.
       
      Estou escrevendo um Sistema com Ponto de Vendas, a minha dúvida é o seguinte, referente ao procedimento mais correto.

      Conforme o caixa vai efetuando a venda, o Sistema de PDV já realiza:
      a baixa direto dos produtos no estoque
      ou
      somente após concretizar a venda o sistema baixa os produtos do estoque ?
       
      Grato,
       
      Cesar
       
    • Por violin101
      Caros amigos do grupo, saudações e um feliz 2025.
       
      Estou com uma pequena dúvida referente a Teclas de Atalho.

      Quando o Caps Lock está ativado o Comando da Tecla de Atalho não funciona.
      ou seja:
      se estiver para letra minúscula ====> funciona
      se estiver para letra maiúscula ====> não funciona
       
      Como consigo evitar essa falha, tanto para Letra Maiúscula quanto Minúscula ?

      o Código está assim:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'r' ) return;// Não é Ctrl+r, portanto interrompemos o script evt.preventDefault(); });  
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
×

Informação importante

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