从外部脚本调用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()代码>按原样静态