用include标签传递变量php

时间:2014-03-14 15:34:34

标签: 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 'phpfunctions/holddate.php';
?>

holddate.php就是这个,

<?php
    $holdingdate = 0; 
    $holdingdate = $changeDate;
?>

执行时我得到一个错误,说$changeDate是holddate.php中的一个未定义的变量,这出错了?这包括推荐的global设置,但仍会收到相同的错误。

2 个答案:

答案 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';
?>