使用include标记php传递变量
我试图将一个变量传递到另一个php文件,获取该变量的代码如下:使用include标记php传递变量,php,variables,include,Php,Variables,Include,我试图将一个变量传递到另一个php文件,获取该变量的代码如下: <?php global $changeDate; $changeDate = $_POST['editdate']; $results = "SELECT title, DATE(start) FROM rota WHERE DATE(start) = '$changeDate' "; $workingUser = mysql_query($results); include
<?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中的一个未定义变量,这是怎么回事?这包括建议的全局设置,但仍然收到相同的错误。使用此设置:
<?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';
?>
您不必使用全局属性或session。
尝试打开“错误”,查看是否返回任何错误
error_reporting(E_ALL);
ini_set('display_errors', '1');
从文件中
包含文件时,它包含的代码将继承包含文件所在行的变量范围。从该点开始,调用文件中该行可用的任何变量都将在被调用文件中可用。但是,包含文件中定义的所有函数和类都具有全局作用域
除非绝对必要,否则我会尽量避免创建全局变量。另外,由于您已经尝试了tht,但它不起作用,因此除了变量范围之外,还有另一个问题。为什么要创建变量$holdingdate
?我已经创建了全局变量,但仍然返回相同的错误您是否在文件顶部设置了全局变量?@user2967211如果您仍然在附近,让我们看看你的表单是什么样子的。如果你没有注意到的话,问题中会说:“我收到一个错误,说$changeDate是holddate.php中一个未定义的变量。”it@YourCommonSense有点难过,你没有什么比通过粗鲁和无益的评论让自己感觉更好的事可做了。冷静地成长guy@YourCommonSense因为他收到了返回的通知,并不意味着他有错误报告。这只是意味着E_通知已设置。也许看看