php$\会话未通过login.php文件发送

php$\会话未通过login.php文件发送,php,session,windows-xp,xampp,Php,Session,Windows Xp,Xampp,几天前,我在WindowsXP32上创建了我的网站。然后重新安装相同类型的windows(professional xp 32位) 现在我的网站不能正常工作$\u会话未发送,我想知道windows是否与此有关(因为我在msconfig->services中关闭了一些启动服务)。 我怀疑的另一件事是XAMPP。在我发现问题后,我在Apache中编辑了1000次php.ini,但它没有解决问题。 在谷歌,很多人抱怨常见的问题。他们说他们改变了服务器,现在会话不被发送 我是php新手,不知道到底发生了

几天前,我在WindowsXP32上创建了我的网站。然后重新安装相同类型的windows(professional xp 32位)

现在我的网站不能正常工作<代码>$\u会话未发送,我想知道windows是否与此有关(因为我在
msconfig->services
中关闭了一些启动服务)。 我怀疑的另一件事是
XAMPP
。在我发现问题后,我在Apache中编辑了1000次
php.ini
,但它没有解决问题。 在谷歌,很多人抱怨常见的问题。他们说他们改变了服务器,现在会话不被发送

我是php新手,不知道到底发生了什么

有没有人能帮我一些提示,说明问题出在哪里,我也想知道使用会话的替代方法是否是一种好的做法,例如,如果用户是
logged_in()->将
数据发送到
mysql->设置logged_in=1如果l
ogout()->设置登录=0
。 或者别的什么。 关于这件事的每一条信息都会有帮助。谢谢大家!

以下是确切的代码情况: 项目链接: 我有这个登录表单:

        <form action="login.php" method="post">
            <ul>
                <li>
                    <input type="text" name="username">
                </li>
                <li>
                    <input type="password" name="password">
                </li>
                <li>
                    <input type="submit" value="login">
                </li>
                <li>
                    <a href="register.php">register</a>
                </li>
            </ul>    
        </form>
在int.php中(它包含在
index.php
)我有:
session_start();

print_r(session_get_cookie_params()); echo '<br>'; // outputs: Array ( [lifetime] => 0 [path] => / [domain] => [secure] => [httponly] => ) 
print_r(session_status());  echo '<br>'; // output: 2

var_dump($_SESSION); // output: array(0) { } 
print_r($_SESSION);
print_r($_SESSION['user_id']); // outputs: "Notice: Undefined index: user_id in C:\xampp\htdocs\orderfood\Core\int.php on line 10"

require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
require 'functions/options.php';

if(logged_in() === true)//this is ok.
{

$session_user_id = $_SESSION['user_id'];  // <-------- not working...
session_start();
打印(会话获取cookie参数());回音“
”;//输出:数组([生存期]=>0[路径]=>/[域]=>[安全]=>[仅httponly]=>) 打印(会话状态());回音“
”;//产出:2 变量转储($会话);//输出:数组(0){} 打印(美元会话); 打印($_会话['user_id']);//输出:“注意:第10行C:\xampp\htdocs\orderfood\Core\int.php中的未定义索引:user\u id” 需要“database/connect.php”; 需要“functions/general.php”; 需要“functions/users.php”; 需要“functions/options.php”; if(logged_in()==true)//这是正常的。 {
$session\u user\u id=$\u session['user\u id'];//您需要在所有文件中包含
session\u start()
。此外,不要使用
session\u close()
session\u destroy()
,因为它会清除所有会话变量

重定向时会出现问题。因此,请同时检查
login.php
index.php
以在开始时使用
session\u start()

如果您提供PHP文件的完整源代码,那么调试就很容易了


查看文件后: 您已添加以下行:

include '/core/int.php';
在所有文件中,应将其替换为:

include 'core/int.php';

这是因为,这不是一台linux机器,而且,您已经在这里给出了相对路径或来自
C:\XAMPP\
等的绝对路径。希望这能解决问题。

解决方案是声明
ini\u集('session.save\u path','SOME WRITABLE path'))
在您所有的脚本文件中,但那将是一件痛苦的事。

会话_start()包含在我的inc.php文件中,该文件包含在所有地方。单击注销时,我仅在logout.php文件中使用session_destroy。在我重新安装windows和xampp之前,脚本工作正常。我想知道语法是否也与此问题有关。例如,在旧windows上,我必须使用不同的引号发送数据o MYsql。嘿,你为什么不换一个浏览器?正常模式,如果是私有/匿名模式。某种方式?safari和iexplorer没有变化。cookies打开了,标准模式严重,挑战性的问题。更新你的问题,如果可以把源代码放在问题中,更新它,即使它太长。Lemme go Through.:)肯定会的修复它。抱歉。这在这里不起作用。不过,感谢您的努力:)刚刚编辑了这个,我没有任何更改。@RishiKalia这不是真的,
session\u start()
每次请求调用的次数不得超过一次。感谢您的评论!请注意,此脚本在我以前的windows xp配置中正常工作。重新安装后,会话停止工作。
include 'core/int.php';