管理员登陆

php中警告提示A session had already been started – ignoring session_start() 解决方法

登录代码用到了session_start()方法,但是直接这样是不正确的!

php会爆出警告提示:

Notice: A session had already been started - ignoring session_start() in ***\sina.php on line 2

错误提示:A session had already been started - ignoring session_start()

翻译过来说的是已经存在一个session被打开了 -- 忽略sessioon_start();

废话不多说,解决问题是关键,切入解决方法:

解决办法1: 在php.ini 中 修改成

session.auto_start = 0  // 0是关闭  1是打开

这还是和前面一样掩耳盗铃,屏蔽掉错误,但是治标不治本!我们还是要解决这个问题,那么请看下面方法:

解决办法2:

问题代码:

session_start();

这样写,其实不是错的,只是缺少了判断,因为有些用户已经在本站录入了session,再次请求就会重复,php爆出这个警告提示,是为了避免更多问题以及性能和安全!

解决这个问题很简单,写个判断呗!

判断 如果session_id 不存在,说明没有储存, 打开session,否则。。。。不多说了,下面代码替换吧

if (!session_id()) session_start();

怎么样简单吧!快去试试吧!

信息科技 2024-03-22 23:20:58 通过 网页 浏览(143) 打印

上一篇

上一篇文章

共有0条评论!

发表评论