PDA

View Full Version: Zgjidhet Kapur një tjetër 4.2.5 VB me VBET gabim



ctrenks
04-06-18, 20:49
Ishte marrë një tjetër paralajmërim kështu që unë krijuar një gabim të raportimit për të shkruar template të hyni dhe të kapur me këtë...



[04-Jun-2018 18:52:57 UTC] $lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .'';
[04 Qer-2018 18:52:57 UTC] PHP Kuptoj gabim: gabim sintakse, të papritura " (T_ENCAPSED_AND_WHITESPACE), duke pritur identifikues (T_STRING), ose të ndryshueshme (T_VARIABLE) ose numri (T_NUM_STRING) në /home/allfreec/public_html/phpBB2/includes/class_core.php(4695) : eval()'d kodi në linjën 1



Çfarë kam bërë është të shkruani template të hyni para se të dështuar, më mori mua 3 ditë, por ky është model i ngarkimit që është hedhur gabim.

vBET
07-06-18, 01:16
Ne do të hetojë atë dhe të ju dërgojnë përgjigje së shpejti.

vBET
15-06-18, 19:56
Ne duhet të kenë versione të ndryshme të vBulletin, sepse në vendin e përshkruar nga log gabim ne kemi } dhe nuk duhet të jetë një shtojcë e përmbarimit.
Ju lutem na jepni përmbajtjes së linjës 4695 në dosjen tuaj /home/allfreec/public_html/phpBB2/includes/class_core.php kështu që ne do të jetë në gjendje për të gjetur të cilat plugin është fajtor dhe të kërkoni për bug.

ctrenks
17-06-18, 02:11
Duke filluar në 4660, ju mund të shihni kodin e mia për të të kapur gabim në log file hedhur off aktuale



/**
* 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
Faleminderit. Dhe kjo ka komentuar kodin tuaj kodi, i cili u kthye 1 linjë të log gabim?

ctrenks
18-06-18, 18:16
Po, ajo do të hyni ndonjë model të ekzekutuara, që nuk përputhen me dy e dinë ata se ishte e prerjeve. Atëherë ajo do të shkruani ytemple të hyni pastaj do të pasohet nga gabimi

ctrenks
18-06-18, 18:55
Nuk jam i sigurt nëse kjo kishte kuptim, kam hyrë çdo të vetme template ngarkesës atje, pastaj hiqen nëse ato nuk shkaktojnë gabim me rr zëvendësuar kontrolloni.

ctrenks
19-06-18, 16:33
Faleminderit. Dhe kjo ka komentuar kodin tuaj kodi, i cili u kthye 1 linjë të log gabim?

error_log($template_code, 0); <- kjo linjë shkruan aktuale $template_code për të log file

Si është gabim fatal, unë kam për të shkruar çdo model të kodit të përpunuar, më pas të shohim se çfarë ajo ishte e para gabim fatal është regjistruar.

vBET
21-06-18, 17:06

$lastpostinfo['lastposter'] = '' . $lastpostinfo['lastposter'] .'';
Nuk ekziston një kod në vBET... A keni bërë ndonjë ndryshim në kodin? Cili version ju keni (ndoshta disa vjetër)?

ctrenks
22-06-18, 14:50
Duhet të jetë një model që është duke përdorur VBET emrin e ka si nuk ka ndryshime janë bërë për të VBET 492.

vBET
22-06-18, 16:05
Kështu që ndoshta ky kod është krijuar duke i shtuar disa pjesë (në lak ose disa të tjera të shprehjes). Unë do të kontrolloni përsëri, duke kërkuar vetëm për një pjesë të saj dhe le ju e dini.

vBET
23-06-18, 19:03
OK, kam gjetur atë. Unë nuk mund të gjeni atë më herët, për shkak se në kodin kemi shpëtuar karaktere para '. Kodi është në file vbenterprisetranslator_functions_hooks.php

$vbulletin->templatecache['forumhome_lastpostby'] =
'$lastpostinfo[\'lastposter\'] = \'\' . $lastpostinfo[\'lastposter\'] .\'\\ ";"
.$vbulletin->templatecache['forumhome_lastpostby'];
Unë nuk mund të riprodhoni këtë çështje kështu që unë nuk jam në gjendje për të kontrolluar zgjidhje. Ju lutem përshkruani se si për të riprodhuar ose të përpiqen për të zëvendësuar kodin me një më poshtë. Kjo zgjidhje nuk ishte e kontrolluar.

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

Kjo mund të jetë ajo - gabim kodin tregon për papritura ' dhe që nga vBulletin vë kodin tonë në " (eval('$final_rendered = "' . $template_code . '";');kjo mund të çojë në gabim. Ju lutem na tregoni, si për të riprodhuar ose kontrolloni zgjidhje të mundshme dhe të na dërgoni statusin tuaj.

ctrenks
25-06-18, 14:31
Unë nuk mund të forcës gabim, unë kam qenë vetëm në gjendje për të kapur atë.. Kjo nuk ndodh të paktën disa herë në disa ditë, kështu që unë do update këtë kod dhe të shikojnë!

vBET
26-06-18, 10:05
Të madh, ne do të presim për info tuaj.

ctrenks
27-06-18, 21:38
Deri tani nuk ka gabime, Duket e mirë

vBET
30-06-18, 09:15
E madhe. Unë do të shënojë këtë bug si zgjidhet dhe të përfshijë zgjidhje në lirimin e ardhshëm. Nëse problemet shfaqen përsëri, ju lutem na tregoni.

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