Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从外部脚本调用php会话变量_Php_Function_Session_Variables - Fatal编程技术网

从外部脚本调用php会话变量

从外部脚本调用php会话变量,php,function,session,variables,Php,Function,Session,Variables,从另一个脚本调用会话变量时出现问题。在这件事上有谁能帮我吗 下面是我创建会话并将时间存储在会话变量中的脚本 <?php session_start(); $orgtimestamp = date("Y-m-d h:i:sa"); $_SESSION['orgtimestamp'] = $orgtimestamp; ?> 下面是我试图从会话变量的函数访问该会话变量的脚本。到目前为止,一切都不起作用 <?php include '../../mydomain/myscrip

从另一个脚本调用会话变量时出现问题。在这件事上有谁能帮我吗

下面是我创建会话并将时间存储在会话变量中的脚本

<?php
session_start();
$orgtimestamp = date("Y-m-d h:i:sa");
$_SESSION['orgtimestamp'] = $orgtimestamp;
?>

下面是我试图从会话变量的函数访问该会话变量的脚本。到目前为止,一切都不起作用

<?php

include '../../mydomain/myscript.php';

class survey_Tracksciprt
{
    public static function timeofclick(){
    session_start();
    $time_org = $_SESSION['orgtimestamp'];
    echo $time_org;
    }
}

您没有在第二个文件中创建类添加:

//I don't know what this does but if it already starts a session remove the session start inside the class.
include '../../mydomain/myscript.php';

$survey = new survey_Tracksciprt();

$survey::timeofclick();

class survey_Tracksciprt
{
    public static function timeofclick(){
    session_start();
    $time_org = $_SESSION['orgtimestamp'];
    echo $time_org;
    }
}

我还建议将session_start放在文件的顶部。

您不是在第二个文件中创建类添加:

//I don't know what this does but if it already starts a session remove the session start inside the class.
include '../../mydomain/myscript.php';

$survey = new survey_Tracksciprt();

$survey::timeofclick();

class survey_Tracksciprt
{
    public static function timeofclick(){
    session_start();
    $time_org = $_SESSION['orgtimestamp'];
    echo $time_org;
    }
}
    <?php

    session_start();

    include '../../mydomain/myscript.php';

    class survey_Tracksciprt
    {
        public static function timeofclick(){
        $time_org = $_SESSION['orgtimestamp'];
        echo $time_org;
        }
    }

我还建议将session_start放在文件的顶部。

首先,您需要一个init-session.php文件,其中包含:

    <?php

    session_start();

    include '../../mydomain/myscript.php';

    class survey_Tracksciprt
    {
        public static function timeofclick(){
        $time_org = $_SESSION['orgtimestamp'];
        echo $time_org;
        }
    }
if (session_status() == PHP_SESSION_NONE) {
    session_start();
}
其次,您需要在加载程序/布局(无论您有什么)的开始处包含此文件,以便在初始化会话之前不会执行任何操作

第三,您应该像下面这样初始化
$orgtimestamp

<?php
$orgtimestamp = date("Y-m-d h:i:sa");
$_SESSION['orgtimestamp'] = $orgtimestamp;
?>


第四,您需要调用
survey\u Tracksciprt::timeofclick()

首先,您需要一个init-session.php文件,其中包含:

if (session_status() == PHP_SESSION_NONE) {
    session_start();
}
其次,您需要在加载程序/布局(无论您有什么)的开始处包含此文件,以便在初始化会话之前不会执行任何操作

第三,您应该像下面这样初始化
$orgtimestamp

<?php
$orgtimestamp = date("Y-m-d h:i:sa");
$_SESSION['orgtimestamp'] = $orgtimestamp;
?>


第四,您需要调用
survey\u Tracksciprt::timeofclick()

会话变量是特定于浏览器的,因此任何php文件都应该能够访问它们。您是否检查了第一个脚本中的设置是否正确。是的,正如Stjin所指出的,您没有在第二个脚本的任何地方调用该函数。在第一行将session_start()也放在这个文件中调用
session_start
两次不是一个好主意session变量是特定于浏览器的,因此任何php文件都应该能够访问它们。您是否检查了第一个脚本中的设置是否正确。是的,正如Stjin所指出的,您没有在第二个脚本的任何地方调用该函数。在第一行调用
session\u start
两次都不是一个好主意
survey\u Tracksciprt::timeofclick()按原样
静态
测量\u Tracksciprt::timeofclick()按原样
静态