我试图将一个变量传递给另一个php文件,我的代码来获取变量就是这个,
<?php
global $changeDate;
$changeDate = $_POST['editdate'];
$results = "SELECT title, DATE(start) FROM rota WHERE DATE(start) = '$changeDate' ";
$workingUser = mysql_query($results);
include 'phpfunctions/holddate.php';
?>
holddate.php就是这个,
<?php
$holdingdate = 0;
$holdingdate = $changeDate;
?>
执行时我得到一个错误,说$changeDate
是holddate.php中的一个未定义的变量,这出错了?这包括推荐的global
设置,但仍会收到相同的错误。
答案 0 :(得分:0)
你不应该使用全局属性或sesions 尝试打开错误,看看是否有任何错误返回。
error_reporting(E_ALL);
ini_set('display_errors', '1');
来自DOCS
当包含文件时,它包含的代码将继承发生包含的行的变量范围。从那时起,调用文件中该行可用的任何变量都将在被调用文件中可用。但是,包含文件中定义的所有函数和类都具有全局范围。
除非绝对必要,否则我会尽量远离创建全局变量。此外,既然你已经尝试了它并且它不起作用,除了变量范围之外还有另一个问题。
答案 1 :(得分:-1)
使用此:
<?php
global $changeDate;
$changeDate = $_POST['editdate'];
$results = "SELECT title, DATE(start) FROM rota WHERE DATE(start) = '$changeDate' ";
$workingUser = mysql_query($results);
include 'phpfunctions/holddate.php';
?>