PDA

Veure la Versió Completa: Resolt Capturat un altre 4.2.5 VB amb error de VBET



ctrenks
04-06-18, 20:49
Aconseguia un altre avís així que vaig crear un error que informa per escriure la plantilla al log i va capturar això...



[04-Jun-2018 18:52:57 UTC] $lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .';
[04-Jun-2018 18:52:57 UTC] PHP Parse error: error de sintaxi, inesperat '' (T_ENCAPSED_I_WHITESPACE), esperant identificador (T_CORDA) o variable (T_VARIABLE) o número (T_CORDA_de NUM) dins /casa/allfreec/públic_html/phpBB2/inclou/nucli_de classe.php(4695) : eval()'d codi en línia 1



Què era escriure la plantilla al log abans que va fallar, em va agafar 3 dies però això és la plantilla que carrega que està tirant l'error.

vBET
07-06-18, 01:16
L'investigarem i enviar-te resposta aviat.

vBET
15-06-18, 19:56
Hem de tenir versions diferents de vBulletin perquè a lloc descrit per error log tenim } i hi hauria d'haver-hi algun plugin execució.
Si us plau donar-nos contingut de línia 4695 en el vostre arxiu /home/allfreec/public_html/phpBB2/includes/class_core.php Així que serem capaços de trobar quin plugin és culpable i buscar bug.

ctrenks
17-06-18, 02:11
Començant a 4660, pots veure el meu codi per agafar l'error al log l'arxiu que tira del real



/**
* 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
Dóna les gràcies a. I això el codi comentat és el vostre codi, el qual va retornar 1a línia d'error log?

ctrenks
18-06-18, 18:16
Sí, ell log qualsevol plantilla executada, que no va aparellar els dos saben uns que sigui logging. Llavors escrigui el ytemple al log llavors ser seguit pel missatge d'error

ctrenks
18-06-18, 18:55
No segur si allò sentit fet, jo logged cada càrrega de plantilla sola allà, llavors els va treure si no van causar l'error amb el str reemplaçar control.

ctrenks
19-06-18, 16:33
Dóna les gràcies a. I això el codi comentat és el vostre codi, el qual va retornar 1a línia d'error log?

Error_log($codi_de plantilla, 0); <- aquesta línia escriu codi $de plantilla_actual al log arxiu

Mentre l'error és fatal, vaig haver de per escriure cada codi de plantilla processat, llavors veure què sigui abans de l'error fatal és enregistrat.

vBET
21-06-18, 17:06

$lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .';
Hi ha no tal codi en vBET... Vas fer qualssevol canvis dins codi? Quina versió tens (potser algun més vell)?

ctrenks
22-06-18, 14:50
Ha de ser una altra plantilla que està utilitzant els VBET anomenen dins allà com cap canvi és fet a VBET 492.

vBET
22-06-18, 16:05
Tan potser aquest codi és generat per afegir diverses parts (dins bucle o alguns altra expressió). Comprovaré un altre cop, mirant només per part d'ell i deixat saps.

vBET
23-06-18, 19:03
OK, el vaig trobar. No el podria trobar més d'hora, perquè dins codi tenim caràcters d'escapada abans que '. El codi és dins arxiu vbenterprisetranslator_functions_hooks.php

$vbulletin->templatecache['forumhome_lastpostby'] =
'$lastpostinfo[\'lastposter\'] = \'\' . $lastpostinfo[\'lastposter\'] .\'\\ ';'
.$vbulletin->templatecache['forumhome_lastpostby'];
No puc reproduir l'assumpte així que no sóc capaç de comprovar solució. Si us plau descriure com per reproduir o intentar reemplaçar el codi amb el a sota. Aquesta solució no va ser comprovada.

$vbulletin->templatecache['forumhome_lastpostby'] =
'$lastpostinfo[lastposter] = \'\' . $lastpostinfo[lastposter] .\'\\ ';'
.$vbulletin->templatecache['forumhome_lastpostby'];

Això pot ser ell - codi d'error diu sobre inesperat ' i des de vBulletin posa el nostre codi dins " (eval('$final_rendered = "' . $template_code . '";');) Això podria dirigir a l'error. Si us plau dir-nos, com per reproduir, o comprovar solució possible i enviar-nos el vostre estat.

ctrenks
25-06-18, 14:31
No puc forçar l'error, i era només capaç de capturar-lo.. Passa com a mínim uns quants temps en un parell de dies així que actualitzaré el codi i rellotge!

vBET
26-06-18, 10:05
Gran - esperarem pel vostre info.

ctrenks
27-06-18, 21:38
Per ara cap error, Mira bo

vBET
30-06-18, 09:15
Gran. Marcaré aquest bug mentre solucionat i incloure solució en alliberament pròxim. Si els problemes apareixen un altre cop, si us plau deixat ens saber.

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