Ir para conteúdo

Arquivado

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

ewersonsv

[Resolvido] [Sistema De Login] Botão Sair/Logar.

Recommended Posts

Eu queria sabe qual tipo de código/comando ou sla... para criar botão duplo "sei la como fala :D"

 

exemplos:

Visitante ver assim:

b3b3cfb5a75b4d239249c89e17851878.png

Usuário Logados:

104ba1951af147b89185d958bae3ff64.png

 

esse negocio ficará nas pagina livre (fora da restrição de login).

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, ESerra disse:

 

verificar a tal session, correto?

 

3 horas atrás, Luiz Gustavo Costa Ceolin disse:

"Sla","Sei la como fala", "esse negocio"... Assim não da vontade alguma de ajudar..

 

Meu Amigo, obrigado pela atenção...

vamos ao caso: se uma criança não sabe o nome de algo ou como cita oque devemos fazer? Ensinar?

no mesmo caso são aqueles que nao sabe fazer algo oque devemos e ensinar e isentiva-las a aprender (caso de coisas boa).

Compreendo sua resposta, mais nem sempre sabemos de tudo, amém ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
38 minutos atrás, MenoR disse:

verificar a tal session, correto?

Não sei como você controla isso no seu sistema, se for session, sim.

 

38 minutos atrás, MenoR disse:

Meu Amigo, obrigado pela atenção...

vamos ao caso: se uma criança não sabe o nome de algo ou como cita oque devemos fazer? Ensinar?

no mesmo caso são aqueles que nao sabe fazer algo oque devemos e ensinar e isentiva-las a aprender (caso de coisas boa).

Compreendo sua resposta, mais nem sempre sabemos de tudo, amém ?

Você não está respondendo a mim, mas nesse caso eu vou fazer a réplica:

 

Ai é uma questão de postura profissional, se você quer se portar como uma criança, ok, mas eu te garanto que a maior parte dos empregadores demitem gente por muito menos que isso. 

 

O modo como nós escrevemos diz muito da nossa própria formação, você comete uns erros toscos de português (p. ex. "isentiva-la"), além disso, ficar jogando gírias aleatórias pode fazer muito sentido no seu contexto de vivência, mas em um fórum não.

 

Aqui vale a máxima, quem precisa de ajuda é você, logo, você deve se esforçar ao máximo para que os outros possam te ajudar, as pessoas só irão te ajudar se em primeiro lugar, a sua dúvida for inteligível.

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, ESerra disse:

Não sei como você controla isso no seu sistema, se for session, sim.

eu controlo por session:

Tou tentando assim mais o mesmo não está verificando a session e só me carrega o botão "LOGAR"

<?php
	if (!isset($_SESSION["email"]) || $_SESSION["email"] != TRUE) {
		echo '<li class="active propClone">
				<a href="./painel/login"> <span class="fa fa-user"></span> Logar </a>
			  </li>';
	}else{
		echo '<li class="active propClone">
				<a href="./painel/inicio"> <span class="fa fa-user"></span> $nome $sobre </a>
			  </li>
			  <li style="color: rgb(103, 186, 118); font-size: 15px; background-color: rgba(255, 70, 100, 50); font-family: Lato, Helvetica, Arial, sans-serif;" class="propClone">
				<a href="./painel/sair"> <span class="fa fa-sign-out"></span> Sair </a>
			  </li>';
		}
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 minutos atrás, ESerra disse:

Você está guardando o valor true/false na sessão? 

 

Não porem; se eu tento sem isso a pagina fica com restrição... ai so pode ver quem está logado mais está tal pagina eu quero deixa livre porem a diferencia e o botão como falei a cima.

Compartilhar este post


Link para o post
Compartilhar em outros sites
11 minutos atrás, ESerra disse:

Você está guardando o valor true/false na sessão? 

o qual a que inicia a session ou a pagina que estou a fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O script onde você está usando aquele if do post:

...
if (!isset($_SESSION["email"]) || $_SESSION["email"] != TRUE) {
...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php
	session_start();
	require 'config.php';

    $run  = mysql_query("SELECT * FROM `configuracao`");
    $site = mysql_fetch_assoc($run);

?>
<html>
<head>
    <meta charset="utf-8">
	<title> Inicio | <?php echo $site['Titulo']; ?> - <?php echo $site['subtitulo']; ?> </title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
	<?php include './phpadc/head.php'; ?>
    <link href="bootstrap/css/bootstrap.css" rel="stylesheet">
    <link href="css/flat-ui.css" rel="stylesheet">
    <link href="css/style.css" rel="stylesheet">
    <link href="css/style-contact.css" rel="stylesheet">
    <link href="css/style-content.css" rel="stylesheet">
    <link href="css/style-footers.css" rel="stylesheet">
    <link href="css/style-headers.css" rel="stylesheet">
    <link href="css/style-team.css" rel="stylesheet">
    <link href="css/style-dividers.css" rel="stylesheet">
    <link href="css/font-awesome.css" rel="stylesheet">
    
</head>
<body>
    
    <div id="page" class="page">
        
 <header class="item header margin-top-0 padding-bottom-0" id="header6">
    
    		<div class="wrapper">
    	
    			<div class="container">
    		
    				<nav role="navigation" class="navbar navbar-inverse navbar-embossed navbar-fixed-top">
    					
    					<div class="container">
    				
    						<div class="navbar-header">
    							<button data-target="#navbar-collapse-02" data-toggle="collapse" class="navbar-toggle" type="button">
    								<span class="sr-only">Menu</span>
    							</button>
    							<a href="./" class="navbar-brand brand"> <?php echo $site['Titulo']; ?> </a>
   							</div>
    								
    						<div id="navbar-collapse-02" class="collapse navbar-collapse">
    							<ul class="nav navbar-nav">			      
    							<li class="active propClone"><a href="./">Inicio</a></li>
    								<li class="propClone"><a href="./sobrenos">Sobre Nós</a></li>
    								<li class="propClone"><a href="./blog">Blog</a></li>
    								<li class="propClone"><a href="./contato">Contato</a></li>
    							</ul> 		      
    							<ul class="nav navbar-nav navbar-right">
    								<?php
										require 'config.php';
										include './phpadc/dados.php'; 
										
										if (!isset($_SESSION["email"]) || $_SESSION["email"] != TRUE) {
											echo '<li class="active propClone">
													<a href="./painel/login"> <span class="fa fa-user"></span> Logar </a>
												  </li>';
										}else{
											echo '<li class="active propClone">
													<a href="./painel/inicio"> <span class="fa fa-user"></span> $nome $sobre </a>
												  </li>
												  <li style="color: rgb(103, 186, 118); font-size: 15px; background-color: rgba(255, 70, 100, 50); font-family: Lato, Helvetica, Arial, sans-serif;" class="propClone">
													<a href="./painel/sair"> <span class="fa fa-sign-out"></span> Sair </a>
												  </li>';
											}
									?>
    							</ul>
    						</div>
    					
    					</div>
    					
    				</nav>
    			
    				<div class="row banner">
    				
    					<div class="col-md-10 col-md-offset-1">
    					
    						<div id="myCarousel" class="carousel carousel1 slide margin-top-80 margin-bottom-80" data-interval="false">
    						  	<div class="carousel-inner">
<?php

require('config.php');


$sql = mysql_query("SELECT * FROM site_slider");
$count = mysql_num_rows($sql);
	
	if($count <= '0'){
		echo "<center><span class='label label-danger'> Slider Vazio! </span></center>";
	}else{
		
		while($linha = mysql_fetch_array($sql)){

?>	
    						    	<div class="item <?php echo $linha['status']; ?> text-center">
    						      		<h1 class="editContent"> <?php echo $linha['titulo']; ?> </h1>
    						      		<p class="lead editContent">
    						      			<?php echo $linha['titulo']; ?>
    						      		</p>
    						      		<p class="text-center">
    						      			<a href="./blog/postagem/<?php echo $linha['titulo']; ?>" class="btn btn-default btn-embossed btn-wide"><span class="fa fa-arrow-right"></span>  Saiba Mais...</a>
    						      		</p>
    						    	</div>
<?php } } ?>
    						    </div>
    					
    						  	<ol class="carousel-indicators">
<?php
$sql = mysql_query("SELECT * FROM site_slider");
while($linha = mysql_fetch_array($sql)){
?>
    						  		<li data-target="#myCarousel" data-slide-to="<?php echo $linha['id']; ?>" class="<?php echo $linha['status']; ?>"></li>
<?php } ?>
								</ol>
							</div>
    					</div>
    				</div>
    			</div>
    		</div>
    	</header>
		<div class="footerWrapper" id="footer3">
    	<div class="item footer dark">
    		<div class="container">
   				<div class="row">
 					<div class="col-md-6 col-md-offset-3 text-center social">
 						
 						<h2> <?php echo $site['Titulo']; ?> © <?php echo date("Y"); ?></h2>
 						
 						<span> SIGA NAS REDESOCIAL: </span><br>
 						<a target="_Blank" href="<?php echo $site['facebook']; ?>"><span class="fa fa-facebook-square"></span></a>
 						<a target="_Blank" href="<?php echo $site['twitter']; ?>"><span class="fa fa-twitter-square"></span></a>
 						<a target="_Blank" href="<?php echo $site['github']; ?>"><span class="fa fa-github-square"></span></a>
 						<a target="_Blank" href="<?php echo $site['googleplus']; ?>"><span class="fa fa-google-plus-square"></span></a>
 					</div>
   				</div>
   			</div>
    		    	
			</div>
    	</div>
	</div>
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery-ui-1.10.3.custom.min.js"></script>
    <script src="js/jquery.ui.touch-punch.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/bootstrap-select.js"></script>
    <script src="js/bootstrap-switch.js"></script>
    <script src="js/flatui-checkbox.js"></script>
    <script src="js/flatui-radio.js"></script>
    <script src="js/jquery.tagsinput.js"></script>
    <script src="js/jquery.placeholder.js"></script>
	<script src="js/jquery.nivo.slider.pack.js"></script>
    <script src="js/application.js"></script>
	<script src="js/over.js"></script>
</body>
</html>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Do jeito que você colocou, não há nada naquele bloco que crie algum tipo de restrição.

 

Partino do princípio que a sessão irá sempre existir quando a pessoa tiver feito o login, basta isto:

if (!isset($_SESSION["email"])) {

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
8 minutos atrás, ESerra disse:

Do jeito que você colocou, não há nada naquele bloco que crie algum tipo de restrição.

 

Partino do princípio que a sessão irá sempre existir quando a pessoa tiver feito o login, basta isto:


if (!isset($_SESSION["email"])) {

 

Mais o mesmo nao faz a tal função da forma que esta a fazer :/

ou seja ele nao ta puxando ou verificando a session.

Compartilhar este post


Link para o post
Compartilhar em outros sites
12 minutos atrás, Luiz Gustavo Costa Ceolin disse:

Não retorna nenhum erro? Já verificou se existe algum valor nesta $_SESSION["email"]?

 

Não Retorna nao... e nao puxa nenhum valor agora fiz assim:

<?php
	require 'config.php';
	include './phpadc/dados.php'; 
										
		if (!isset($_SESSION["email"]) == $status ) {
?>
		<li class="active propClone">
			<a href="./painel/inicio"> <span class="fa fa-user"></span> <?php echo $nome; ?> <?php echo $sobre; ?> </a>
		</li>
		<li style="color: rgb(103, 186, 118); font-size: 15px; background-color: rgba(255, 70, 100, 50); font-family: Lato, Helvetica, Arial, sans-serif;" class="propClone">
			<a href="./painel/sair"> <span class="fa fa-sign-out"></span> Sair </a>
		</li>
<?php
	}else{
?>			
	<li class="active propClone">
		<a href="./painel"> <span class="fa fa-user"></span> Logar </a>
	</li>
<?php
	}
?>

da variável $status ele ta puxando 1 = online / 0 = offline ou seja se o valor for 1 existirá uma sessão na variável $_SESSION['email'] caso for 0 não existirá... porem queria sabe se há alguma vulnerabilidade sobre isso.  

 

a variável $status puxa em um campo do tal usuário que vai abrir uma sessão no mesmo... que esta puxando o valor 1 ou 0 com WHERE pelo dados.php ( = "SELECT * FROM usuarios WHERE email = '".$_SESSION['usuarioEmail']."'"; )

 

quando loga o mesmo faz update = 1 & quando desloga " = 0

 

assim ta funcionando porém se houver alguma vulnerabilidade desta forma, peço que me fala por favor :D

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Luiz Gustavo Costa Ceolin disse:

Onde você atribui valor a esta SESSION?

 

O valor 1 ou 0 ta puxando direto do Banco De Dados Não Por Session, quando faz o login, tem um comando a onde criar a sessão de update para 1 e quando desloga outro update para 0.

 

estes botões serão mostrado nas paginas fora do painel  ou seja em todo site: Inicio, sobre nos, contato, blog e etc...

17 horas atrás, MenoR disse:

exemplos:

Visitante/Deslogados ver assim:

b3b3cfb5a75b4d239249c89e17851878.png

Usuário Logados:

104ba1951af147b89185d958bae3ff64.png

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá MenoR, penso que não seja necessário dar UPDATE no SQL cada vez que o usuário LOGAR, até porque desta forma, ele não poderá se logar de outros dispositivos normalmente (Desktop, Smartphone, etc).

 

Fiz dessa forma, caso esteja interessado:

 

para pegar os dados da SESSION atual:

include "connection.php";
	
	session_start();	
	if(isset($_SESSION['login_usuario']) && isset($_SESSION['senha_usuario']) && isset($_SESSION['id_usuario'])) {
		
		$id_usuario = $_SESSION['id_usuario'];
		$login_usuario = $_SESSION['login_usuario'];
		$senha_usuario = $_SESSION['senha_usuario'];
	}

 

 

e para verificar se o usuário está logado ou não:

<? if(isset($_SESSION['login_usuario']) && isset($_SESSION['senha_usuario']) && isset($_SESSION['id_usuario'])) {
	  $login_usuario = $_SESSION['login_usuario'];
	  
	  echo 'Logado como: '.$login_usuario.' | ';
	  echo '<a href="logout.php">Log out</a>';
	  } else {

  	  echo '<a href="logar.php">Logar</a>';

}

?>

 

e para "Logar" na SESSION, pode fazer dessa forma:

<?

include "conexao.php";

$loginUsuario = $_POST['nomeUsuario'];
$senhaUsuario = $_POST['senhaUsuario'];

$sql = mysql_query("SELECT * FROM usuarios WHERE nomeUsuario = '$loginUsuario'");
while($linha = mysql_fetch_array($sql)) {
	$id_db = $linha['idUsuario'];
	$senha_db = $linha['senhaUsuario'];
	$situacaoUsuario = $linha['situacaoUsuario'];
	$dataUsuario = $linha['dataCriacaoUsuario'];
	}

$cont = mysql_num_rows($sql);
	
	if($cont == 0) {
		echo "
			<meta http-equiv='refresh' content='0; url=index.php' />
			<script type='text/javascript'>alert ('Login não existe')</script>
		";
		} else {
			if ($senha_db != $senhaUsuario) {
				echo "
			<meta http-equiv='refresh' content='0; url=index.php' />
			<script type='text/javascript'>alert ('Senha não corresponde')</script>
		";
			}
			else {
				session_start();
				$_SESSION['id_usuario'] = $id_db;
				$_SESSION['login_usuario'] = $loginUsuario;
				$_SESSION['senha_usuario'] = $senhaUsuario;
				header("Location: perfil.php?id='$id_db'");
			}
		}
	}
		
		/* Fecha MySQL */
		mysql_close($db);

?>

 

Qualquer dúvida, é só falar;

Compartilhar este post


Link para o post
Compartilhar em outros sites
12 minutos atrás, AnthonyKamers disse:

<? if(isset($_SESSION['login_usuario']) && isset($_SESSION['senha_usuario']) && isset($_SESSION['id_usuario'])) { $login_usuario = $_SESSION['login_usuario']; echo 'Logado como: '.$login_usuario.' | '; echo '<a href="logout.php">Log out</a>'; } else { echo '<a href="logar.php">Logar</a>'; } ?>

esse codigo FUNCIONOU sem precisar de update :D para oque eu quero fazer!

Resolvido!

<?php
require 'config.php';
include './phpadc/dados.php';

 if(isset($_SESSION['email']) && isset($_SESSION['senha']) && isset($_SESSION['usuarioId'])) { ?>
	<li style="border: solid 2px; border-color: #1abc9c; background: #FFF;" class="active propClone">
		<a href="./painel/inicio"> <span class="fa fa-lock"></span>  <?php echo $nome; ?> <?php echo $sobre; ?> </a>
	</li>
	
	<li style="color: rgb(103, 186, 118); border: solid 2px; border-color: #1abc9c; background: red;" class="active propClone">
		<a href="./painel/sair"> <span class="fa fa-sign-out"></span> Sair </a>
	</li>
<?php  } else { ?>
  	<li style="border: solid 2px; border-color: #1abc9c; background: #FFF;" class="active propClone"><a href="./painel"> <span class="fa fa-lock"></span> Logar </a></li>
<?php } ?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • 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, ativo. Nela tem cadastrado vários itens. No campo ativo eu coloco a letra "S" para informar que este item está ativo no sistema. Por exemplo: 1, casa, S 2, mesa, S 3, cama, S 4, moto S 5, rádio O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "produtos" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, mesa, moto 2, mesa, casa, cama 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela produtos da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "mesa". Preciso fazer com que o php me liste todos os registros da tabela "produtos" que contenham a palavra "mesa". Até aqui tudo bem eu consigo listar. Estou fazendo assim: <?php $item = "mesa" $sql = mysqli_query($conn, "SELECT * FROM produtos WHERE item1 LIKE '$item' OR item2 LIKE '$item' OR item3 LIKE '$item' LIMIT 10"); while($aux = mysqli_fetch_assoc($sql)) { $id = $aux["id"]; $item1 = $aux["item1"]; $item2 = $aux["item2"]; $item3 = $aux["item3"]; echo $id . " - " . $item1 . ", " . $item2 . ", " $item3 . "<br>"; } ?> O problema é que está listando todos os registros que contém o item mesa. Eu preciso que o php verifique os demais item e me liste somente os registro em que todos os registros estejam ativos no sistema. No exemplo acima ele não deveria listar o registro 3. pois nesse registro contém o item "radio" e este item não está ativo no sistema. Ou seja, o registro "radio" na tabela itens não possui um "S" na coluna "ativo". Alguém sabe como resolver isso?
    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • 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?
×

Informação importante

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