当用户首先没有登录时转到索引,它将重定向到登录页面。
但如果用户在登录时尝试打开登录页面,如何让用户重定向到索引?
我的登录php:
<?php
if(isset($_POST["button_login"])) //FUNGSI LOGIN
{
$user = $_POST["name"];
$pass = $_POST["password"];
$sql_login = "SELECT * FROM user WHERE username='$user' AND password='$pass'";
$result_login = $conn->query($sql_login);
$row_login = $result_login->fetch_assoc();
$numrow_login = $result_login->num_rows;
if($numrow_login==1)
{
session_start();
$_SESSION['user'] = $user;
header('Location:index.php?');
}
}
?>
答案 0 :(得分:3)
您应该首先测试他们是否已经登录。最好是在脚本文件顶部var Phantasma = require('phantasma');
var ph = new Phantasma();
var domains = ['http://www.simpleweb.org'];
for (domain in domains) {
var dom = domains[domain];
ph.viewport(1360, 960)
.open(dom)
.screenshot('home.png')
.evaluate(function () {
var links = [].filter.call(document.querySelectorAll('a'), function (link) {
if(link.hostname === document.location.hostname) {
return link
}
})
return links.map(function(link){
return [link.hostname, link.pathname];
})
})
.reduce(function(links, link){
var cleanSlashes = link[1].replace(/\//g, '.') // change forward slash to . to be able to save on windows.
console.log('processing: ' + link[0] + link[1]);
return ph
.open('http://' + link[0] + link[1])
.screenshot(cleanSlashes + '.png')
.catch(function (e) {
console.log('error in scrapurl', e)
})
})
.catch(function (e) {
console.log('error', e);
})
.finally(function () {
console.log('finally!');
ph.exit();
});
}
session_start()
答案 1 :(得分:2)
基本上,您有两种情况:
1)如果用户未登录并访问index.php
,则应将其重定向至login.php
。
- 您已经实施了此项检查。
2)如果用户已登录并访问login.php
,则应将其重定向至index.php
。
在最顶部的login.php
添加一个支票:
这将检查会话是否已设置,重定向到index.php
。
if (isset($_SESSION['user'])) {
header('Location:index.php?');
}
另外,请勿添加结尾?>
代码。
如果你添加它,一些FTP客户端可能会在那里添加空格,导致header("Location:xyz.php")
由于页面上的输出而没有发生。
答案 2 :(得分:1)
你的索引中需要这样的东西:
if (isset($_SESSION['user'])) {
header('Location:index.php');
}