单独页面上的php变量不起作用

时间:2018-12-11 11:41:11

标签: php variables foreach global

任何人都可以帮忙。这让我发疯了!

我在一页上:

foreach($images_not_on_server_unique as $img => $missing){
    foreach($test as $m => $n){
        foreach($n as $o => $p){
            $query1 = "SELECT * FROM $p WHERE adv='$missing'";
            $result1 = mysqli_query($conn,$query1) or die(mysqli_error());
            $numofrows = mysqli_num_rows($result1);
            if($numofrows >= '1'){
                $row1 = mysqli_fetch_array($result1);
                $errors_images++;
            }
        }
    }
}
echo $errors_images;

可以正确打印出“ 16”。

在另一页上,我包括该页,然后像这样:从第一页回显该变量:

echo "errors images ".$errors_images;

应该给我'16'。但是,我只得到“错误图像”。

我在做什么错。我之前曾经使用过多次,而且它一直有效(但可能不在foreach循环中)。我曾尝试使用$ GLOBALS,但无济于事。

非常感谢您的帮助。

编辑

第二页的完整代码

<?php 
include("login/include/session.php"); 
include("dbconnect/index_new.php"); 
require("errors/q_errors.php"); 
include_once("errors/q_missing_images.php"); 
echo "errors images ".$errors_images; 
?> 

更新:

我已添加

$my_test = '555'; 

返回第一页,并在第二页中用回显

echo "my test ". $my_test; 

,它可以正常工作! 因此,它必须与第一页中的foreach函数有关。

1 个答案:

答案 0 :(得分:0)

您错误地包含了文件

include_once 'path/to/file.php';

或者您打错了电话

echo 'errors images'.$errors_images.'';