PHP会话启动失败
我正在尝试在webiste的标题页中启动会话。但似乎存在某种缺陷,因为它失败并出现以下错误:PHP会话启动失败,php,session,xampp,Php,Session,Xampp,我正在尝试在webiste的标题页中启动会话。但似乎存在某种缺陷,因为它失败并出现以下错误: Warning: session_start() [function.session-start]: open(\xampp\tmp\sess_a7430aab4dd08d5fc0d511f781f41fe5, O_RDWR) failed: No such file or directory (2) in D:\Development\PHP\tt\Include\header.php on line
Warning: session_start() [function.session-start]: open(\xampp\tmp\sess_a7430aab4dd08d5fc0d511f781f41fe5, O_RDWR) failed: No such file or directory (2) in D:\Development\PHP\tt\Include\header.php on line 3
我使用的是xampp的默认设置,一切都是开箱即用的。由于某种原因,它无法打开该文件。但是,当我转到包含会话文件的目录时,文件就在那里,它们只是空的。这是虫子吗?还是我做错了什么
php版本5.2.8这意味着您没有读取或写入临时目录中文件的正确权限 如果你在linux上,那么就这样做
sudo chmod -R 755 \xampp\tmp //or should it be 775
在windows上,以管理员身份执行此操作
attrib -r -a C:\xampp\tmp /S
首先停止Xampp服务器 session.save_path=“\xampp\tmp” 把它改成这样 session.save_path=“C:\xampp\tmp” 重新启动Xampp服务器
就这样,您的会话应该可以按预期工作。正如Selular88所提到的,添加路径可以解决此问题。您还可以使用检查路径
// This will output your current path.
echo session_save_path() ;
@SHOBAN我认为在调用session_start()时没有什么可以做的事情会导致这个错误,没有必要查看代码。它给了我一个file not found错误,所以我在末尾添加了/D,它就成功了。不幸的是,这并没有解决问题。如果我右键单击文件夹并转到“属性”,则选中“只读”。但是,如果我取消选中它,单击“应用”,然后右键单击并返回“属性”,它将再次被选中。您可能没有更改权限的适当权限。我以管理员身份登录。我通过更改它在php中使用的目录解决了这个问题。问题是目录必须存在。这个问题已经有了公认的答案。除非您的答案添加了相关信息,或者更正了当前答案中发现的错误,否则您不应发布答案。@MadaraUchiha对已接受的答案有一条评论,指出它没有解决问题。所以,添加一个实际可行的答案不应该是一个错误。接受的答案并没有解决我的问题,而这篇文章解决了。所以对这一个竖起大拇指。就像对Sgali一样,这为我修复了它(好的,我改为目录到C:\之外的路径,但仍然感谢您的提示!)