КПК

Прагляд поўнай версіі: Вырашанае Захапілі яшчэ 4.2.5 VB з vbet памылку



ctrenks
04-06-18, 20:49
Атрымліваю яшчэ адно папярэджанне, таму я стварыў справаздачу пра памылку, каб напісаць шаблон ў часопіс і зняў гэта...



[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 дні, але гэта загрузка шаблону, які кідае памылку.

vBET
07-06-18, 01:16
Мы будзем расследаваць яго і адправіць вам адказ.

vBET
15-06-18, 19:56
Мы павінны мець розныя версіі форуму, таму што ў месца, апісанае ў часопісе памылак мы } і павінна быць выкананне плагіна.
Калі ласка, дайце нам кантэнт 4695 радкі ў ваш файл /home/allfreec/public_html/phpBB2/includes/class_core.php так мы зможам знайсці, які убудова вінаваты і шукаць памылкі.

ctrenks
17-06-18, 02:11
Пачынаючы з 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 . '";');
}

vBET
18-06-18, 18:01
Дзякуй. І гэты закаментаваныя код-гэта код, які вярнуў 1-й лініі часопіс памылак?

ctrenks
18-06-18, 18:16
Так, гэта было ў часопісе ўсё выконваецца шаблон, які не адпавядаў ведаеце, што гэта было лесанарыхтоўкі. Потым ён будзе пісаць ytemple ў часопіс, затым рушыць услед паведамленне пра памылку

ctrenks
18-06-18, 18:55
Не ўпэўнены, калі гэта мае сэнс, я запісваў кожны загрузіць шаблон ёсць, а затым выдаліць іх, калі яны не выклікаюць памылку з вул замяніць праверыць.

ctrenks
19-06-18, 16:33
Дзякуй. І гэты закаментаваныя код-гэта код, які вярнуў 1-й лініі часопіс памылак?

функцыю error_log($template_code, 0); &ЛТ;- гэты радок піша цяперашніх $template_code ў лог-файл

Як памылка з'яўляецца фатальнай, мне прыйшлося пісаць кожны апрацаваны код шаблону, а затым убачыць, якім ён быў да фатальнага запісваецца паведамленне пра памылку.

vBET
21-06-18, 17:06

$lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .'';
Няма такога кода ў vbet... вы ўнеслі якія-небудзь змены ў код? Якая версія ў цябе (можа трохі старэй)?

ctrenks
22-06-18, 14:50
Павінен быць іншы шаблон, які выкарыстоўвае імя ў vbet там пакуль не былі ўнесены змяненні з vbet 492.

vBET
22-06-18, 16:05
Так што, магчыма, гэты код ствараецца шляхам дадання некалькіх частак (у пятлі ці некаторыя іншыя выразы). Я буду правяраць зноў, гледзячы толькі на частку яго, і хай вы ведаеце.

vBET
23-06-18, 19:03
ОК, я знайшоў яго. Я не мог знайсці яго раней, таму што ў кодзе ў нас ёсць сімвалы да '. Код у файл 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 . '";');) гэта можа прывесці да памылкі. Раскажыце, калі ласка, як прайграць або праверыць магчымыя рашэнні і адпраўце нам Ваш статус.

ctrenks
25-06-18, 14:31
Я не магу прымусіць памылку, я быў толькі ў стане захапіць яго.. гэта адбываецца як мінімум некалькі раз у пару дзён, так што я буду абнаўляць код і глядзець!

vBET
26-06-18, 10:05
Выдатна - будзем чакаць вашай інфармацыі.

ctrenks
27-06-18, 21:38
Пакуль няма памылак, добра глядзіцца

vBET
30-06-18, 09:15
Выдатна. Я буду адзначаць гэтую памылку, як вырашыць і ўключыць рашэнне ў наступным рэлізе. Калі праблемы зноў з'явяцца, калі ласка, дайце нам ведаць.

Automatic Translations (Powered by Google, Microsoft®, Yandex, SDL Language Cloud, IBM Watson and Apertium):
AfrikaansAlbanianArabicBelarusianBulgarianCatalanChineseCroatianCzechDanishDutchEnglishEstonianFilipinoFinnishFrenchGalicianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishTaiwaneseThaiTurkishUkrainianVietnameseWelshYiddish
Translations made by vBET 4.10.1