Ir para conteúdo

POWERED BY:

Arquivado

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

Dexter Morgan

[Resolvido] Session ( exibir email do usuario em pagina sem prote

Recommended Posts

Olá Galera,,

 

Queria uma ajuda nesse código com sessões..

é o seguinte tenho a pagina inicial , e no topo tem uma caixinha escrito

Area dos Assinantes / Logar..

 

e tem a pagina que o assinante loga....,,,

eu quero que depois de logado na pagina inicial apareça o nome do usuario que logou

segue o cógido

 

header.php - topo do index.php

<?php session_start(); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Pragma" content="no-cache" />
<meta name="google-site-verification" content="vJ7bqGOvfLssbGb2DHz9ecpPIpc7Sg8rZ-6uXZzfHfo" />
<meta name="title" content="http://www.avozonline.com.br/" />
<meta name="author" content="Leonardo Tavares dos Reis" />
<meta name="subject" content="Jornal Online, Ultimas Notícias, Ataque, Tudo de bom, Esportes, Cultura, Saúde, Ciência, Economia, Fotografia, Trânsito, Educação, Mundo, País, Plantão, Loterias, Horóscopo, Tempo, Rio, São Paulo, Petróleo, Impostos, Viagem, Tecnologia, Marketing e Pesquisa" />
<meta name="description" content="Jornal Online, Ultimas Notícias, Ataque, Tudo de bom, Esportes, Cultura, Saúde, Ciência, Economia, Fotografia, Trânsito, Educação, Mundo, País, Plantão, Loterias, Horóscopo, Tempo, Rio, São Paulo, Petróleo, Impostos, Viagem, Tecnologia, Marketing e Pesquisa" />
<meta name="keywords" content="Jornal Online, Esportes, Cultura, Diversão, Saúde, Ciência, Economia, Fotografia, Trânsito, Educação, Mundo, País, Plantão, Loterias, Horóscopo, Tempo, Rio, São Paulo, Petróleo, Impostos, Viagem, Comércio, Tecnologia, Marketing" />
<meta name="generator" content="Bloco de Notas" />
<meta name="language" content="Pt" />
<meta name="revisit-after" content="3 Days" />
<meta name="distribution" content="GLOBAL" />
<meta name="robots" content="All" />

<link rel="shortcut icon" href="http://www.avozonline.com.br/home/designer/favicon.ico" type="image/x-icon" />

	<title> A Voz Online | Jornal Voz </title>

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>

<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-12758684-1");
pageTracker._trackPageview();
} catch(err) {}
</script>

	<!-- CSS -->

<link rel="stylesheet" type="text/css" href="home/css/body.css" />

<?php
switch ($css){
case 0 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_gray.css" />';
break;
case 1 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_black.css" />';
break;
case 2 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_red.css" />';
break;
case 3 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_green.css" />';
break;
case 4 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_orange.css" />';
break;
case 5 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_cyan.css" />';
break;
case 6 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_lime.css" />';
break;
case 7 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_deepblue.css" />';
break;
case 8 : echo '<link rel="stylesheet" type="text/css" href="home/css/theme_purple.css" />';
break;
default: echo '<link rel="stylesheet" type="text/css" href="home/css/theme_gray.css" />';
break;
}
?>

<link rel="stylesheet" type="text/css" href="home/css/menu.css" />

<link rel="stylesheet" type="text/css" href="home/css/slide_box.css" />

<link rel="stylesheet" type="text/css" href="home/css/highslide.css" />

<link rel="stylesheet" type="text/css" href="home/css/bottom.css" />

<link rel="stylesheet" type="text/css" href="home/css/footer.css" />

	<!-- JS -->

<script type="text/javascript" src="home/js/mootools.js"></script>

<script type="text/javascript" src="home/js/block.js"></script>

<script type="text/javascript" src="home/js/menu.js"></script>

<script type="text/javascript" src="home/js/highslide_effects.js"></script>

<script type="text/javascript" src="home/js/highslide.js"></script>

<script type="text/javascript" src="home/js/form.js"></script>

<script type="text/javascript" src="home/js/valid.js"></script>

</head>

	<body>

<div id="header">
<div id="header-background">

<?php

include "conexao.php";
$q_user = mysql_query("SELECT * FROM assinante WHERE email='" . $_SESSION['email'] . "' AND ativado='1'");
$login_check = mysql_num_rows($q_user);
if (!$_SESSION['id_assinante']){
echo "<div class='logged'><div class='logged-admin'><div class='logged-border'>";
echo "<div id='user'><font face='verdana' size='2' color='#ffffff'>Área dos Assinantes /</font> <a href=\"assinante/index.php\" style='outline:0;'><smal><font face='verdana' size='2' color='#ffffff'>Logar</font></smal></a></div>";
echo "</div></div></div>";
}
else {
echo "<div class='logged'><div class='logged-admin'><div class='logged-border'>";
echo "<a href=\"assinante/index.php\" style='outline:0;' title='Ir à minha Área Restrita' alt='Ir à minha Área Restrita'><div id='user'><font face='verdana' size='2' color='#ffffff'>" . $_SESSION['email'] . "</a> /</font> <a href=\"assinante/logout.php\" style='outline:0;'><smal><font face='verdana' size='2' color='#ffffff'>Sair</font></smal></a></div>";
echo "</div></div></div>";
}

?>

<div class="logo"><img src="home/img/logo.jpg" border="0" title="A Voz Online | Jornal Voz" alt="A Voz Online | Jornal Voz" /></div>

</div>
</div>

 

agora php que faz a session ao logar da area do assinante (obs as paginas do assinante estão em uma pasta separada do arquivo index primeira do site)

check

 

<?php

session_name("userlogin");
session_start("user");
if($_GET['acao'] == "logar") {
include "../conexao.php";
$email = $_POST['email'];
$q_user = mysql_query("SELECT * FROM assinante WHERE email='$email' AND ativado='1'");
if(mysql_num_rows($q_user) == 1) {
$query = mysql_query("SELECT * FROM assinante WHERE email='$email' AND ativado='1'");
$dados = mysql_fetch_array($query);
if($_POST['senha'] == $dados['senha']) {
while($row = mysql_fetch_array($q_user)){
foreach( $row AS $key => $val ){
$$key = stripslashes( $val );
}
$_SESSION['id_assinante'] = $id_assinante;
$_SESSION['email'] = $email;
$_SESSION['nome'] = $nome;
$_SESSION['sobrenome'] = $sobrenome;
$_SESSION['sexo'] = $sexo;
$_SESSION['foto'] = $foto;
$_SESSION['pais'] = $pais;
$_SESSION['estado'] = $estado;
$_SESSION['cidade'] = $cidade;
$_SESSION['cep'] = $cep;
$_SESSION['rua'] = $rua;
$_SESSION['bairro'] = $bairro;
$_SESSION['ddd'] = $ddd;
$_SESSION['tel'] = $tel;
header("Location: index.php");
exit;
}
}

else {
echo "<center>";
echo "<br />";
echo "<table class='error' width='800'>";
echo "<tr bgcolor='#ffffff'>";
echo "<td>";
echo "<div align='center'><font face='verdana' size='2' color='#cc0000'>Senha Inválida</font></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</center>";
include "login.php";
exit;
}
}

else {
echo "<center>";
echo "<br />";
echo "<table class='error' width='800'>";
echo "<tr bgcolor='#ffffff'>";
echo "<td>";
echo "<div align='center'><font face='verdana' size='2' color='#cc0000'>E-mail Inválido</font></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</center>";
include "login.php";
exit;
}
}

if(session_is_registered("email") == false) {
header("Location: login.php");
}

?>

 

se quiserem pode ver o código nesse link

 

http://guiamaisdaweb.com/jornal/

http://guiamaisdaweb.com/jornal/assinante/

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode criar uma session com o email do cliente na hora que ele logar e recuperar ela em qual quer página que você quiser.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode criar uma session com o email do cliente na hora que ele logar e recuperar ela em qual quer página que você quiser.

 

Fazendo essa parte ja nao esta certo??

 

$_SESSION['id_assinante'] = $id_assinante;

$_SESSION['email'] = $email;

$_SESSION['nome'] = $nome;

$_SESSION['sobrenome'] = $sobrenome;

$_SESSION['sexo'] = $sexo;

$_SESSION['foto'] = $foto;

$_SESSION['pais'] = $pais;

$_SESSION['estado'] = $estado;

$_SESSION['cidade'] = $cidade;

$_SESSION['cep'] = $cep;

$_SESSION['rua'] = $rua;

$_SESSION['bairro'] = $bairro;

$_SESSION['ddd'] = $ddd;

$_SESSION['tel'] = $tel;

Compartilhar este post


Link para o post
Compartilhar em outros sites

então quando eu faço o login e redireciona para a pagina do assinante consigo sim

 

para você coferirem asscesa com

 

http://guiamaisdaweb.com/jornal/assinante/'>http://guiamaisdaweb.com/jornal/assinante/

 

email l@avozonline.com.br

senha 555

 

ai redireciona e aparece o email e o nome do user..

 

mas se volto para essa pagina

 

http://guiamaisdaweb.com/jornal/

que seria a 1° pagina do site

 

 

ele nao exibe o email

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vi aqui realmente não está mostrando, faz o seguinte manda exibir a session email no header sem fazer a verificação pra ver se mostra.

Compartilhar este post


Link para o post
Compartilhar em outros sites

também nao mostrou nada cara ;/

 

uma coisa que tentei foi colocar o session_start assim

 

<?php session_start("user"); ?>

 

porque no check.php eu defini assim mas memo assim nao funfo nao....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dexter Morgan, pra que você usa 2 selects do mesmo jeito, e pra que você usa aquele while e aquele foreach?

Compartilhar este post


Link para o post
Compartilhar em outros sites

então nao estava daquele jeito, só que quando eu logava as informações do usario tbm nao aparecia ai depois que coloquei dessa forma com while e foreach as infomações aparecem quando eu logo....

 

outro detalhe curioso que a

$$key só funciona assim

$key tbm nao exibe as informações

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma pequena melhorada no código.

 


<?php

session_name("userlogin");
session_start("user");
if($_GET['acao'] == "logar") {
include "../conexao.php";

// Você estava usando o escape depois do select não ia adiantar de nada.

$email = stripslashes($_POST['email']);
$senha = stripslashes($_POST['senha']);
$q_user = mysql_query("SELECT * FROM assinante WHERE email='$email' AND senha = '$senha' AND ativado='1'");
if(mysql_num_rows($q_user) == 1) {
$dados = mysql_fetch_array($q_user);

$_SESSION['id_assinante'] = $dados['id_assinante'];
$_SESSION['email'] = $dados['email'];
$_SESSION['nome'] = $dados['nome'];
$_SESSION['sobrenome'] = $dados['sobrenome'];
$_SESSION['sexo'] = $dados['sexo'];
$_SESSION['foto'] = $dados['foto'];
$_SESSION['pais'] = $dados['pais'];
$_SESSION['estado'] = $dados['estado'];
$_SESSION['cidade'] = $dados['cidade'];
$_SESSION['cep'] = $dados['cep'];
$_SESSION['rua'] = $dados['rua'];
$_SESSION['bairro'] = $dados['bairro'];
$_SESSION['ddd'] = $dados['ddd'];
$_SESSION['tel'] = $dados['tel'];
header("Location: index.php");

else {
echo "<center>";
echo "<br />";
echo "<table class='error' width='800'>";
echo "<tr bgcolor='#ffffff'>";
echo "<td>";
echo "<div align='center'><font face='verdana' size='2' color='#cc0000'>Senha Inválida</font></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</center>";
include "login.php";
exit;
}
}

else {
echo "<center>";
echo "<br />";
echo "<table class='error' width='800'>";
echo "<tr bgcolor='#ffffff'>";
echo "<td>";
echo "<div align='center'><font face='verdana' size='2' color='#cc0000'>E-mail Inválido</font></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</center>";
include "login.php";
exit;
}
}

if(session_is_registered("email") == false) {
header("Location: login.php");
}

?>

 

Veja se funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa linha eu tinha colocado errado.

 

//tava assim 
$dados = mysql_fetch_array($sql);

// Coloca assim
$dados = mysql_fetch_array($q_user);

 

Desculpa antes do else coloca o fechamento do if }.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A gente só mexeu no arquivo que faz a checagem, não mexemos no index.php e nem no login.php, verifique oq você fez aí.

 


<?php

session_name("userlogin");
session_start("user");
if($_GET['acao'] == "logar") {
include "../conexao.php";

// Você estava usando o escape depois do select não ia adiantar de nada.

$email = stripslashes($_POST['email']);
$senha = stripslashes($_POST['senha']);
$q_user = mysql_query("SELECT * FROM assinante WHERE email='$email' AND senha = '$senha' AND ativado='1'");
if(mysql_num_rows($q_user) == 1) {
$dados = mysql_fetch_array($q_user);

$_SESSION['id_assinante'] = $dados['id_assinante'];
$_SESSION['email'] = $dados['email'];
$_SESSION['nome'] = $dados['nome'];
$_SESSION['sobrenome'] = $dados['sobrenome'];
$_SESSION['sexo'] = $dados['sexo'];
$_SESSION['foto'] = $dados['foto'];
$_SESSION['pais'] = $dados['pais'];
$_SESSION['estado'] = $dados['estado'];
$_SESSION['cidade'] = $dados['cidade'];
$_SESSION['cep'] = $dados['cep'];
$_SESSION['rua'] = $dados['rua'];
$_SESSION['bairro'] = $dados['bairro'];
$_SESSION['ddd'] = $dados['ddd'];
$_SESSION['tel'] = $dados['tel'];
header("Location: index.php");
}
else {
echo "<center>";
echo "<br />";
echo "<table class='error' width='800'>";
echo "<tr bgcolor='#ffffff'>";
echo "<td>";
echo "<div align='center'><font face='verdana' size='2' color='#cc0000'>usuário e Senha incorreto</font></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</center>";
include "login.php";
exit;
}
}


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

então copiei esse que você postou agora ,, ele nao deu erro mas entra direto no index..

fica como logado mas nao aparece nenhum email...

 

entra aí para ver ...

 

http://guiamaisdaweb.com/jornal/assinante/

 

Cara deu certo tava faltando

 

if(session_is_registered("email") == false) {

header("Location: login.php");

}

 

mas agora na index da 1° pagina ainda nao exibe o email

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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