Перегляд повної версії: Вирішений Захопили ще 4.2.5 VB з vbet помилку
Отримую ще одне попередження, тому я створив звіт про помилку, щоб написати шаблон в журнал і зняв це...
[04-Jun-2018 18:52:57 UTC] $lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .'';
[04-чер-2018 18:52:57 UTC] PHP для розбору помилки: синтаксична помилка, несподіваний " (T_ENCAPSED_AND_WHITESPACE), очікуючи ідентифікатор (T_STRING) або змінною (T_VARIABLE) або кількість (T_NUM_STRING) /home/allfreec/public_html/phpBB2/includes/class_core.php(4695) : функції eval()'D у коді на рядку 1
Те, що я робив, було написати шаблон в журнал до його виходу з ладу, взяв мене 3 дні, але це завантаження шаблону, який кидає помилку.
Ми будемо розслідувати його і відправити тільки вам відповідь.
Ми повинні мати різні версії форуму, тому що місце, описане в журналі помилок ми } і повинно бути виконання плагіна.
Будь ласка, дайте нам контент 4695 рядки в файл /home/allfreec/public_html/phpBB2/includes/class_core.php так ми зможемо знайти, плагін винен і шукати помилки.
Починаючи з 4660, ви можете побачити мій код, щоб зловити помилки у файл журналу скинувши фактичний
/**
* Renders the output after preperation.
* @see vB_Template::render()
*
* @param boolean Whether to suppress the HTML comment surrounding option (for JS, etc)
* @return string
*/
protected function render_output($suppress_html_comments = false)
{
//This global statement is here to expose $vbulletin to the templates.
//It must remain in the same function as the template eval
global $vbulletin;
extract($this->registered, EXTR_SKIP | EXTR_REFS);
$actioned = false;
($hook = vBulletinHook::fetch_hook('template_render_output')) ? eval($hook) : false;
if (!$actioned)
{
$template_code = self::fetch_template($this->template);
}
if (strpos($template_code, '$final_rendered') !== false)
{
eval($template_code);
}
else
{
/*
$tcount = 0;
$tst = str_replace("vB_Template_Runtime::fetchStylevar('outertablewidth')","",$template_code,$tcount);
$tst = str_replace("old_explorer","",$template_code,$mcount);
if ($mcount==0&&$tcount==0){
error_log($template_code, 0);
}
*/
eval('$final_rendered = "' . $template_code . '";');
}
Спасибі. І цей закомментированный код-це код, який повернув 1-ї лінії журнал помилок?
Так, це було у журналі все виконується шаблон, який не відповідав знаєте, що це було лісозаготівлі. Потім він буде писати ytemple в журнал, потім послідує повідомлення про помилку
Не впевнений, якщо це має сенс, я записував кожен завантажити шаблон є, а потім видалити їх, якщо вони не викликають помилку з вул. замінити перевірити.
Спасибі. І цей закомментированный код-це код, який повернув 1-ї лінії журнал помилок?
функцію error_log($template_code, 0); &ЛТ;- цей рядок пише нинішніх $template_code в лог файл
Як помилка є фатальною, мені довелося писати кожен оброблений код шаблону, а потім побачити, яким він був до фатального записується повідомлення про помилку.
$lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .'';
Немає такого коду в vbet... ви внесли якісь зміни в код? Яка версія у тебе (може трохи постарше)?
Має бути інший шаблон, який використовує ім'я vbet там поки не були внесені зміни з vbet 492.
Так що, можливо, цей код створюється шляхом додавання декількох частин (в петлі або деякі інші вирази). Я буду перевіряти знову, дивлячись тільки на частину її, і нехай ви знаєте.
ОК, я знайшов його. Я не міг знайти його раніше, тому що в коді у нас є символи до '. Код в файл vbenterprisetranslator_functions_hooks.php
$vbulletin->templatecache['forumhome_lastpostby'] =
'$lastpostinfo[\'lastposter\'] = \'\' . $lastpostinfo[\'lastposter\'] .\'\\ ";"
.$хорол-&ГТ;templatecache['forumhome_lastpostby'];
Я не можу відтворити проблему, тому я не змогла перевірити рішення. Будь ласка, опишіть, як відтворити або спробувати замінити код на одну нижче. Це рішення не було перевірено.
$vbulletin->templatecache['forumhome_lastpostby'] =
'$lastpostinfo[lastposter] = \'\' . $lastpostinfo[lastposter] .\'\\ ";"
.$хорол-&ГТ;templatecache['forumhome_lastpostby'];
Це може бути це - код помилки говорить про несподіваних і з форуму ставить наш код у " (eval('$final_rendered = "' . $template_code . '";');це може призвести до помилки. Розкажіть, будь ласка, як відтворити або перевірити можливі рішення і відправте нам Ваш статус.
Я не можу змусити помилку, я був тільки в змозі захопити його.. це відбувається як мінімум кілька раз в пару днів, так що я буду оновлювати код і дивитися!
Здорово - будемо чекати вашої інформації.
Поки що немає помилок, добре виглядає
Здорово. Я буду відзначати цю помилку, як вирішити і включити рішення в наступному релізі. Якщо проблеми знову з'являться, будь ласка, дайте нам знати.
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions Inc. All rights reserved.