2013-04-26 33 views
1

我使用Jumi将自定义php展开为joomla articulate。Joomla - 使用php生成的大量代码=>空白页

function generateTR($tr_nr) { 
    $html=""; 
    for ($i=0; $i<$tr_nr; $i++) { 
     $m=memory_get_usage(); 
     $html.="<tr><td colspan='5'>$i - $m</td></tr>"; 
    } 
    return $html; 
} 


echo "<table><tbody>".generateTR(20000)."</tbody></table>"; 

如果我运行这个代码(generateTR(20000))通过jumi =>我得到空白页。 如果我通过访问php文件直接运行它=>它显示表OK。

如果将行数更改为2000 => generateTR(2000)=>它会通过jumi显示joomla文章中的表。

为什么当我增加html代码量=> joomla + jumi无法处理它? 另外我尝试了sourcerer而不是jumi =>同样的问题。

有没有解决方法?

谢谢。

编辑: 我试图增加max_execution_time 180秒;也memory_limit的到2000M

EDIT2: 在日志中没有错误...

error_reporting(E_ALL | E_STRICT); 
ini_set("display_errors", 1); 

得到了一些错误,但没有涉及到这个问题......因为当少数TR行错误是一样的,表格显示OK。

+1

可能在执行时间限制或内存限制上运行。 – Pitchinnate 2013-04-26 20:31:10

+0

编辑:我试图增加max_execution_time 180秒;也memory_limit到2000M – ihtus 2013-04-26 20:33:58

+0

错误日志中的任何错误? – Pitchinnate 2013-04-26 20:34:23

回答

-1

得到了解决,这要归功于耶稣基督。

空白页的原因是“系统 - SEF”插件。 这里是bug - http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=24865

你会在Joomla 1.5中得到空白页面。

在的Joomla 2.5,你会得到 “500 - PHP正则表达式达到上限(pcre.backtrack_limit)”

这是同样的错误。

2解决方案:

1)禁用 “系统 - 海基会” 插件,如果你不需要海基会

2)如果你需要SEF -

添加

ini_set('pcre.backtrack_limit',1000000); 

ini_set('pcre.backtrack_limit',1000000); 
ini_set('pcre.recursion_limit',1000000); 

到您的模板的index.php。

0

添加在开始

set_time_limit(0); 
+0

刚刚尝试...这并没有帮助.. – ihtus 2013-04-26 20:34:32