- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个网站
Red Sec
我为所有子域使用 1 个帐户:
所有页面都具有相同的样式,只是通过将它们全部连接到 http://red-sec.net/res/menu.php 来实现不同的内容。 .这是它的代码,因为您无法阅读它:
<?php
require 'connection.php';
function menu(){
if(!isset($_SESSION['username'])){
echo '<nav class="navbar navbar-default navbar-fixed-top shadow">
<div class="container">
<a href="http://red-sec.net" class="navbar-brand">Red-Sec.net</a>
<ul class="nav navbar-nav">
<li class="menuitem"><a href="http://red-sec.net">Home</a></li>
<li class="menuitem"><a href="http://announcements.red-sec.net">Announcements</a></li>
<li class="menuitem"><a href="http://forum.red-sec.net">Forum</a></li>
<li class="menuitem"><a href="http://blog.red-sec.net">Blog</a></li>
<li class="menuitem"><a href="http://news.red-sec.net">News</a></li>
<li class="menuitem"><a href="http://donate.red-sec.net">Donate</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="menuitem"><a href="http://red-sec.net/signup.php">Sign Up</a></li>
<li class="menuitem"><a href="http://red-sec.net/Login.php">Log In</a></li>
</ul>
</div>
</nav>
<script
src="https://code.jquery.com/jquery-3.1.1.js"
integrity="sha256-16cdPddA6VdVInumRGo6IbivbERE8p7CQR3HzTBuELA="
crossorigin="anonymous"></script>
<script src=" ../js/menu.js"></script>
<div class="container bg">
<div class="row full">
<div class="col-lg-8 bd">';
}else{
$username = $_SESSION['username'];
echo '<nav class="navbar navbar-default navbar-fixed-top shadow">
<div class="container">
<a href="http://red-sec.net" class="navbar-brand">Red-Sec.net</a>
<ul class="nav navbar-nav">
<li class="menuitem"><a href="http://beta.red-sec.net">Home</a></li>
<li class="menuitem"><a href="http://announcements.red-sec.net">Announcements</a></li>
<li class="menuitem"><a href="http://forum.red-sec.net">Forum</a></li>
<li class="menuitem"><a href="http://blog.red-sec.net">Blog</a></li>
<li class="menuitem"><a href="http://news.red-sec.net">News</a></li>
<li class="menuitem"><a href="http://donate.red-sec.net">Donate</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="menuitem"><a href="http://red-sec.net/profile.php">'.$username.'</a></li>
<li class="menuitem"><a href="http://red-sec.net/Logout.php">Log Out</a></li>
</ul>
</div>
</nav>
<script
src="https://code.jquery.com/jquery-3.1.1.js"
integrity="sha256-16cdPddA6VdVInumRGo6IbivbERE8p7CQR3HzTBuELA="
crossorigin="anonymous"></script>
<script src="../js/menu.js"></script>
<div class="container bg">
<div class="row full">
<div class="col-lg-8 bd">';
}
}
function endbd(){
require'connection.php';
echo '</div>
<div class="col-lg-4 bd sidebar">
<h2 class="title">Latest News Post</h2>
<hr class="under">';
$query = "SELECT * FROM news ORDER BY date DESC LIMIT 1";
$run = mysqli_query($connect,$query);
if(!$run){
echo 'sorry';
}
$row = mysqli_fetch_array($run);
$article_id = $row['article_id'];
$user_id = $row['user_id'];
$title = $row['title'];
$content = $row['content'];
$date = $row['date'];
$query = "SELECT username FROM users WHERE ID = '$user_id'";
$test = mysqli_query($connect,$query);
$row2 = mysqli_fetch_array($test);
$user_name = $row2['username'];
echo '<div class="row">
<div class="col-lg-12"><h3 class="para"><a class="para" href="/news/article.php?id='.$article_id.'">'.$title.'</a></h3>
<p class="para">Written by: '.$user_name.'</p>
</div>
</div>
</div>
</div>
</div>';
}
?>
我注意到当您登录主页并转到子域时,菜单会显示注册或登录而不是您的用户名,这是它应该做的。
但是,当您单击注册或登录时,它只会刷新页面并显示您的用户名和旁边的注销选项。这意味着 session 在子域中工作,但由于某种原因一开始没有显示,所以你必须刷新它?有人可以解释为什么会这样吗?
编辑:
这是我如何使用 res/menu.php
<?php
session_start();
include 'res/connection.php';
include 'res/menu.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>R3D S3C | Home page</title>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"/>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/style1.css"/>
<link href='https://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>
</head>
<body>
<?php menu(); ?>
<h2 class="title">Red Sec</h2>
<p class="para">Long Lorem Ipsum text goes here...</p>
<?php endbd(); ?>
</body>
</html>
编辑 2:
请求的登录页面:
<?php
session_start();
include 'res/connection.php';
include 'res/menu.php';
if(isset($_SESSION['username'])){
header('Location: profile.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link href="css/style1.css" rel="stylesheet" type="text/css"/>
<title>Red Sec | Login</title>
</head>
<body>
<?php
$error = "";
$userErr = "";
$passErr = "";
if(isset($_POST['Login'])){
$username = $_POST['username'];
$password = $_POST['password'];
if($username == ""){
$userErr = "Username cannot be empty";
}else{
$userErr = "";
}
if($password == ""){
$passErr = "Password cannot be empty";
}else if(strlen($password) > 32){
$passErr = "Password too long";
}
else{
$passErr = "";
}
if($userErr == "" && $passErr == ""){
$sql = "SELECT * FROM users WHERE username = '$username' OR email = '$username'";
$result = mysqli_query($connect,$sql);
if(!$result){
$error = "Unable to retrieve information, please try again later.";
}else if(mysqli_num_rows($result) < 1){
$error = "This account does not exist!";
}else{
$row = mysqli_fetch_array($result);
$dbpassword = $row['password'];
$salt = $row['salt'];
$password = crypt($password,$salt);
if($password == $dbpassword){
$_SESSION['id'] = $row['ID'];
$_SESSION['username'] = $row['username'];
$_SESSION['email'] = $row['email'];
$error = "";
echo "<script>window.location = 'profile.php'</script>";
}else{
$error = "username or email / Password combination is wrong!";
}
}
}else{
$error = "";
}
}
?>
<?php menu(); ?>
<h2 class="title">Log In</h2>
<form id="register-form" class="text-left" method="post">
<div class="login-form-main-message"></div>
<div class="main-login-form">
<div class="login-group">
<p class="error"><?php echo $error; ?></p>
<div class="form-group">
<label for="reg_username" class="sr-only">Username or Email</label>
<input type="text" class="form-control" id="reg_username" name="username" placeholder="Username or Email">
<p class="error"><?php echo $userErr; ?></p>
</div>
<div class="form-group">
<label for="reg_password" class="sr-only">Password</label>
<input type="password" class="form-control" id="reg_password" name="password" placeholder="password">
<p class="error"><?php echo $passErr; ?></p>
</div>
<div class="move">
<button class="button btn btn-primary" value="Login" name="Login">Login</button>
</div>
</div>
</div>
</form>
<?php endbd(); ?>
</body>
</html>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
最佳答案
请阅读这篇文章
https://stackoverflow.com/a/11030316/6329312
PHP:
<?php
session_set_cookie_params(0, '/', '.mywebsite.com');
session_start();
//Code...
?>
关于javascript - session 在子域中可用但未实际显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41689852/
我有这个 html 代码: HELLO WORLD! X V HELLO WORLD! X V 我想按 X(类关闭)将父 div 的高度更改为 20px 并显示 V(类打开),但在每个 d
在会计应用程序的许多不同实现中,有两种主要的数据库设计方法来保存日志和分类帐数据。 只保留 Journal 信息,然后 Ledger 只是 Journal 的一个 View (因为 journal 总
我想在另一个子里面有一个子, sub a { sub b { } } 我想为每次调用 sub b 创建一个新的 sub a 实例。有没有办法在 Perl 中做到这一点? 当我运行上面的
我有一些代码正在查找重复项并突出显示单元格: Private Sub cmdDups_Click() Dim Rng As Range Dim cel As Range Set Rng = ThisW
可能有一个简单的解决方案,但我很难过。 我有一个包含一个 ID 字段的主表。在两个可能的字段中有一个具有该 ID 的子表。想象一个由选手 A 和选手 B 组成的 double 队。Master 表将有
假设我有一个包含对象的数组: [ { "id": "5a97e047f826a0111b754beb", "name": "Hogwarts", "parentId": "
我正在尝试对 MySQL 数据库表执行一对父/子模型的批量插入,但似乎无法使用标准的 ActiveRecord 功能来完成。所以,我尝试了 activerecord-import gem,但它也不支持
我有一个带有多个子类的父抽象类。最终,我希望通过 GUI 中的进度条显示子类中完成的进度。 我目前所做的,我意识到这是行不通的,是在父类中声明为每个子类将覆盖的虚拟方法的事件方法定义。所以像: pub
是否可以通过键数组在对象中设置变量?例如我有这个对象: var obj = {'outer': {'inner': 'value'} }; 并希望设置由键数组选择的值: var keys = ['ou
我有一个名为 companies 的 MySQL 表,如下所示: +---------+-----------+-----------+ | id_comp | comp_name | id_pare
我正在尝试使用 sublime text 在 sublime text 上的 ionic 上打开我的第一个应用程序。它给了我一个“找不到命令”的错误。如何修复? 我试过这些命令: sudo rm -r
不好意思问,但我正在使用 webapp2,我正在设计一个解决方案,以便更容易定义路由 based on this google webapp2 route function .但这完全取决于能够在子级
我有代表树的数字字符串(我不知道是否有官方名称): 012323301212 上面的例子代表了 2 棵树。根用 0 表示。根的直接子代为“1”,“1”的直接子代为“2”,依此类推。我需要将它们分组到由
是否可以在当前 Activity 之上添加 Activity 。例如,假设我单击一个按钮,然后它将第二个 Activity 添加到当前 Activity 。而第二个 Activity 只覆盖了我当前
我很难思考如何为子资源建模。 以作者的书籍为例。你可以有 N 本书,每本书只有一位作者。 /books GET /books POST /books/id PUT /books/id DELETE 到
有人可以向我解释以下内容(python 2.7) 来自已解析文件的两个字符串数字: '410.9''410.9 '(注意尾随空格) A_LIST = ['410.9 '] '410.9' in '41
背景 在 PowerShell 中构建 hash table 是很常见的通过特定属性快速访问对象,例如以 LastName 为基础建立索引: $List = ConvertFrom-Csv @' I
我真的很难弄清楚如何调用嵌套 Polymer Web 组件的函数。 这是标记: rise-distribution组件有 canPlay我想从 rise-playlist
我写了一个小工具转储(以 dot 格式)一个项目的依赖关系图,其中所有位于同一目录中的文件都聚集在一个集群中。当我尝试生成包含相应图形的 pdf 时,dot开始哭: 命令 dot -Tpdf trim
给定一个 CODE ref,是否可以: 访问该 CODE ref 的解析树 通过指定 CODE ref 的解析树来创建一个新的 CODE ref,该解析树可以包含在 1 中返回的解析树的元素 通常我们
我是一名优秀的程序员,十分优秀!