我正在开发一个简单的网站项目,只是为了测试我学到的东西,但只为注册用户显示轮询让我很头疼。当用户没有登录时,我无法让它消失。感谢所有帮助!
<?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的代码,我想为未注册的用户隐藏,谢谢!
答案 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 } ?>