0

我有一个关于 Sessions 和验证登录用户的问题。

我的问题是关于将用户发送到“登录”页面,即。个人资料页

if ($num_rows > 0) {
session_start();
$_SESSION['login'] = "1";
header ("Location: profile.php");
}

这是否意味着只有登录用户才能查看的任何页面都必须具有 php 扩展名。

例如,如果是 profile.html,那么任何知道该文件在哪里的人都可以查看它吗?

那么每个个人资料页面都会有一个 .php 扩展名吗?在这个 php 文件中,是表单的 html 代码之类的吗?

4

4 回答 4

0

您可以向每个 PHP 页面添加一个短代码,以验证用户是否已登录,如果未登录,则将用户重定向到登录页面(您还可以保存引用以将他带回他想要访问的页面)。

所以简短的回答是肯定的,您需要在每个页面中都使用代码来验证用户。

于 2012-04-18T06:43:55.960 回答
0

如果你想用 php 编写你的登录系统,每个页面都需要有 php 扩展名,因为如果用户登录,你需要检查每个页面。

如果您不想使用 php,您也可以使用 .htaccess 文件作为登录系统

于 2012-04-18T06:44:34.777 回答
0

为了确保维护单入口点,可以使用 htaccess 来确保不能访问其他文件,并且我们将 index.php 文件隐藏在 url 中。

The .htaccess file itself looks like this-

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?rt=$1 [L,QSA]



The .htaccess file will permit access to the site via urls such as
http://www.example.com/news/show


If you do not have mod_rewrite available, the entry to the site will be the same,    except that the URL will contain the values needed such as:
http://www.example.com/index.php?rt=news/show
于 2012-04-18T06:54:19.697 回答
0

那么每个个人资料页面都应该有一个 .php 扩展名吗?

我会说是的。如果您在每个配置文件页面中使用 php 脚本检查会话全局变量,那么您需要具有 .php 扩展名,因为它是要在您的服务器中运行的脚本。

如果您的个人资料页面没有登录保护,或者您没有使用 php 脚本检查会话全局变量,那么 .html 扩展名适用于个人资料页面。

来源: 使用 Sessions 的登录密码保护页面 | PHP

于 2015-10-28T17:52:00.967 回答