2017-07-29 145 views
-2

我有以下問題。 我有一個server.php文件,通過index.php?page=server&pname=$1&port=$2訪問,它顯示了有關服務器的所有詳細信息。 一旦我將server.php文件更改爲像test.php並通過index.php?page=test&pname=$1&port=$2 訪問它,整個文件不起作用,因爲它說很多變量是未知的。有沒有人處理過這樣的事情?文件重命名後的變量

短右從文件的頂部剪斷:

<?php 





if(empty($_GET['pname']) || !$server->exists) { 
    $_SESSION['error'][] = $language['errors']['server_not_found']; 
} else { 

    /* Check if server is disabled */ 
    if(!$server->data->active) { 
     $_SESSION['error'][] = $language['errors']['server_not_active']; 
    } 

} 

if(!empty($_SESSION['error'])); 



$result = $database->query("SELECT `id` FROM `points` WHERE `type` = 0 AND `server_id` = {$server->data->server_id} AND `ip` = '{$_SERVER['REMOTE_ADDR']}' AND `timestamp` > UNIX_TIMESTAMP(NOW() - INTERVAL 1 DAY)"); 
if(!$result->num_rows) $database->query("INSERT INTO `points` (`type`, `server_id`, `ip`, `timestamp`) VALUES (0, {$server->data->server_id}, '{$_SERVER['REMOTE_ADDR']}', UNIX_TIMESTAMP())"); 


if($server->data->cachetime > time() - $settings->cache_reset_time) { 


    $info = json_decode($server->data->details); 

} else { 


} 


?> 

錯誤是:

說明:未定義變量:服務器在 ++++第7行

注意:試圖在 ++++上獲取第7行的非對象屬性

N otice:未定義指數:server_not_found在 ++++上線8

注意:未定義的變量:服務器 ++++上線22 等

後,我重命名文件時,$服務器變量不再可用,即使我將其更改爲新文件名也不起作用。 沒有包含可以聲明$ server變量的地方。

我感謝各種幫助!

+1

您不顯示'$ server'的來源,當然它的未定義。 – AbraCadaver

+0

如果文件名是server.php,它可以工作。 $ server變量沒有單獨聲明。 –

+0

你可以添加index.php文件的相關部分嗎?特別是包含$ _GET ['page']的所有行。我懷疑一些隱含的定義,比如'$ {$ _ GET ['page']} = new whatever()'是不同行爲的原因。 – jh1711

回答

0

我發現了一個很不起眼的文件中的答案在我不得不改變

$_GET['page'] == 'server' 

$_GET['page'] == 'test' 

一個非常愚蠢的錯誤。

感謝大家幫助!

@ jh1711