无法找到常量ONLINE [关闭]

am using CodeIgniter and i keep get a error from the config file

A PHP Error was encountered
Severity: Warning
Message: constant() [function.constant]: Couldn't find constant ONLINE
Filename: libraries/co.php
Line Number: 534


A PHP Error was encountered
Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at /home/baahoot/public_html/Outlaws/system/core/Exceptions.php:185)
Filename: helpers/url_helper.php
Line Number: 542

i am not sure what i am doing wrong this is a working code from git hub. I am new to php and would like to see how this worked on arvixe server using the mysql db anyone know how to fix this type of error??

libraries/co.php somewhere around :534

function __construct() { 
    $CI =& get_instance(); 
    //$CI->form_validation->set_error_delimiters( '<br /><div class="response error-note">Error: ', '</div>' ); 
    if(constant('ONLINE') == FALSE): 
        //$CI->output->enable_profiler(TRUE); endif; 
    if(1 == 0 && constant('ONLINE') == TRUE ) { 
        echo $CI->load->view('temporary', '', true); exit; 
    } $CI->load->config('redis'); 
    $this->redis = ($CI->config->item('redis_active')); 
}
doushi5117
doushi5117 Duskwuff。我自己也是这么想的,所以我在服务器公司找到技术,检查我是否确保所有设置。所有当时没有任何帮助。即使我使用的Azure服务器比这个Unix更多,我发现uri的路径以一种方式设置来修复错误。
接近 7 年之前 回复
douqian1517
douqian1517 有可能在旧服务器上禁用了error_reporting,因此这个错误根本不是新的(它只是在静默发生)。
接近 7 年之前 回复
dosrmo0442
dosrmo0442 好吧,我们无从得知。
接近 7 年之前 回复
dongqiang2069
dongqiang2069 是的,我试图找出代码中的设置尚不确定
接近 7 年之前 回复
doubiantiao4994
doubiantiao4994 该脚本正在寻找未定义的常量ONLINE,而不是sya
接近 7 年之前 回复

1个回答



只需在单词 ONLINE </ code>上使用项目范围的区分大小写搜索,任何现代IDE甚至编辑器都具有此功能 。</ p>

查看它的使用位置,看看它是否在某处定义。 如果不是 - 看看它取决于它并在项目中的某个地方定义。 它是一个常量,而不是一个变量,所以它是你在项目中硬编码的一个简单值,所以知道它应该是什么应该没有问题。</ p>

你甚至可能 尝试将其设置为 true </ code>,但这只是猜测。 如需进一步的帮助,请使用</ p>

<前> 文件名:libraries / co.php
Line编号:534
</ code> </ pre中的方法中的代码更新您的问题 >

编辑:</ p>

提供代码之后,我建议只做一个脏的黑客并将这些行添加到 __ construct </ code>方法 在一开始就这样看起来像这样。 </ p>

  function __construct(){
if(!defined('ONLINE')){
define('ONLINE',true);
}
</ code> </ pre>

如果它会抛出错误,请尝试 false </ code>而不是 true </ code>。 据我所知,这个常量如果 true </ code>意味着该页面正在生产中,并且在开发中如果为false,那么请按照您的意愿进行游戏。</ p>

考虑清理 所有代码。</ p>
</ div>

展开原文

原文

Just use project-wide case sensitive search on word ONLINE, any modern IDE and even editors have this functionality.

See where it's used and see if it's defined somewhere. If not - see what depends on it and define somewhere in the project. It's a constant, not a variable, so it's a simple value you hard-code in your project, so there should be no problem with getting to know what it should be.

You may even try setting it to true, but that's just a guess. For further help, please update your question with the code from the method at

Filename: libraries/co.php
Line Number: 534

EDIT:

after you provided the code, I recommend to just make a dirty hack and add these lines to the __construct method right in the beginning so it would look like this.

function __construct() {
    if(!defined('ONLINE')) {
        define('ONLINE', true);
    }

If it will throw errors, try false instead of true. As I understand, this constant if true means that the page is in production, and in development if false, so play around as you wish.

Consider cleaning up all the code.

dp6319
dp6319 为了让我不被认为是赤裸裸的,请尝试在CodeIgniter存储库中找到文件库/ co.php:github.com/EllisLab/CodeIgniter
接近 7 年之前 回复
doushao5047
doushao5047 嗯,对不起,你认为那是从哪里复制粘贴的? Ragequit只要你愿意。 常量ONLINE不是CodeIgniter的一部分,而是您项目的一部分,其中一个开发人员是您或其他从事过该项目的人员。 我提供了修复此问题的方法,因为您没有提供足够的信息甚至代码库来找出应该如何正确修复它。 在提问或发表愤怒评论时,请考虑阅读SO的常见问题解答,尤其是如何提出问题,提供什么以及在您请求帮助解决问题时应该如何帮助他人。
接近 7 年之前 回复
doublestar2014
doublestar2014 并且只是为了确保我不只是在说杨,我尝试了你的想法,你忘了的唯一的事情就是每一行代码都需要构造才能正常工作11134行代码之后现在死了你的想法。 让我想到永远不要求你的帮助!!!!
接近 7 年之前 回复
dongsuo0517
dongsuo0517 我已经更新了我的答案
接近 7 年之前 回复
dousi4900
dousi4900 下次编辑您自己的问题以提供此代码的更多详细信息,因为此处无法读取。 这次我会为你做的
接近 7 年之前 回复
douweng3564
douweng3564 如果(常量('ONLINE')== FALSE),它接缝成为这一行我似乎无法弄清楚它:
接近 7 年之前 回复
drep94225
drep94225 这是我有函数的代码__construct(){$ CI =&get_instance(); // $ CI-> form_validation-> set_error_delimiters('<br /> <div class =“response error-note”>错误:','</ div>'); if(constant('ONLINE')== FALSE):// $ CI-> output-> enable_profiler(TRUE); 万一; if(1 == 0 && constant('ONLINE')== TRUE){echo $ CI-> load-> view('temporary','',true); 出口; } $ CI-> load-> config('redis'); $ this-> redis =($ CI-> config-> item('redis_active')); / *未记录的代码* /
接近 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐