调用session_start()的正确位置在哪里?

时间:2017-06-27 09:41:52

标签: php login

从我作为初学者学习的代码中,似乎有两种使用PHP设置登录系统的主要方法。我想知道哪个是更好的"这样做的方式。

第一种方式是在每个页面的标题中调用session_start(),无论用户是否登录。调用时的登录脚本通过$_SESSION添加变量。如果变量与Users表匹配,则用户登录并获得对登录区域的访问权。

第二种方式首先在登录脚本中调用session_start(),然后在用户区域内的每个其他页面中调用。

  • 鉴于需要调用session_start()来创建或恢复会话,最好的做法只是将其放入标题并忘记它吗?

OR

  • 首次在登录脚本中调用session_start()

这个决定的含义是什么?

1 个答案:

答案 0 :(得分:0)

  

第一种方式是在每个页面的标题中调用session_start(),无论用户是否登录。

出于多种原因,这是理想的选择。

从一开始,可能会出于安全性(或其他原因)添加其他功能。例如,您可能有一些阻止的IP地址,您不想访问您的网站,或者您可以使用该会话获取统计信息。

所以,即使他们没有登录,也许你想看到一个人从哪里被重定向到某个页面。

总的来说,出于安全原因和开发统计功能,它有助于开发更简单的会话管理。