只有注册用户才能看到民意调查

时间:2017-08-30 19:37:22

标签: php login

我正在开发一个简单的网站项目,只是为了测试我学到的东西,但只为注册用户显示轮询让我很头疼。当用户没有登录时,我无法让它消失。感谢所有帮助!

<?php
session_start();
require 'dbConfig.php';
$username = addslashes($_POST['username']);
$password = md5(addslashes($_POST['password']));


if($_SERVER['REQUEST_METHOD'] != "POST")
{
	header('Location:mainpaige.php');
}
if(isset($username) && isset($password))
{
	$q = mysql_query("SELECT username, password FROM users WHERE username='$username' AND password='$password'LIMIT 1");
	if(mysql_num_rows($q) == 1)
	{
		$user = mysql_fetch_assoc($q);
		$_SESSION['username'] = $user['username'];
		header('Location:mainpaige.php');
	}
	else
	{
		$_SESSION[error] = "Wrong name or password";
		header('Location:mainpaige.php');
	}
}

?>

这是登录表单的login.php。这个

<?php 
session_start();
?>


<html>
	<head>
		<link type="text/css" rel="stylesheet" href="logical.css">
		<meta http-equiv = "Content-Type" content = "text/html; charset = utf-8" />
		<title>Logical</title>
	</head>
	<body>
		<div class="back">
			<a href="../../mainpaige.php">Go Back</a>
		</div>
		<div class="centraltext">
			<h1>Top 10</h1>
		</div>
		
		<?php if(isset($_SESSION['username']))
			{
		?>
			<div class="poll">
				<script type="text/javascript" src="http://www.easypolls.net/ext/scripts/emPoll.js?p=59a6fa56e4b0f0b62d08adbe"></script>
				<a class="OPP-powered-by" href="http://trailguide.net/html" style="text-decoration:none;">
				<div style="font: 9px arial; color: gray;">bike trails</div></a>
			</div>
		<?php
			}
		?>
	</body>
</html>

是带有poll div的代码,我想为未注册的用户隐藏,谢谢!

2 个答案:

答案 0 :(得分:0)

基本上,您需要识别用户是否已登录的内容,我将为您提供一个非常简单的示例。

session_start();

$_SESSION['user_id'] = PLACE_THE_USERID_HERE;

然后你可以做一个简单的if语句来确定你是否要显示民意调查。

if(isset($_SESSION['user_id']) && $_SESSION['user_id'] != null) {
     //Place poll code here
}

此语句只检查user_id是否已设置以及user_id是否为空

这是非常基础的,需要一些工作。但是你明白了。

答案 1 :(得分:0)

如果您尝试仅为某些访问者显示html,则可以通过多种方式实现此目的。您可以这样做的一种方法是当用户登录时(无论您具有该设置),您可以将$ _SESSION变量设置为true或其他值。

例如:

$_SESSION['logged_in'] = true;

然后在你的html中你可以做类似的事情:

<?php if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']){ ?>

<!-- HTML GOES HERE -->

<?php } ?>