Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 13776|Odpoveď: 1

[vzájomná pomoc] Ako opraviť chybu Includes\cls_template.php na riadku 418 v ecshope

[Kopírovať odkaz]
Zverejnené 20. 2. 2015 17:20:02 | | |

Problém, s ktorým som sa stretol predtým, bol som veľmi znepokojený, ako ho vyriešiť, a teraz som konečne našiel riešenie, a teraz sa oň s vami podelím, problém je nasledovný:
Prísne štandardy: V upload\include\cls_template.php na riadku 418 by sa mali odkazovať iba premenné
Riadok 418: $tag_sel = array_shift(explode(' ', $tag));

Obchádzka 1:
Problém verzií 5.3 a vyššie by mal súvisieť aj s konfiguráciou. Pokiaľ riadok 418 rozdelí túto vetu na dve vety, nie je problém $tag_sel = array_shift(explode(' ', $tag)); Zmenené na:

$tag_arr = explodovať(' ', $tag); $tag_sel = array_shift($tag_arr);
Keďže parametre array_shift sú prenášané referenciou, predvolene je možné odovzdať len konkrétne premenné nad 5.3 a hodnota nemôže byť vrátená cez funkciu
Rovnako, keď narazíte na chyby pri vnorení funkcií, môžu byť zapísané samostatne a chyby sa prirodzene vyriešia

Ako:
Funkcia get_dyna_libs($theme, $tmp)
{
$extsub = explodovať('.', $tmp);
$ext = end($extsub);
$tmp = základný názov($tmp,".$ext");
$sql = 'VYBRAŤ región, knižnicu, sort_order, id, číslo, typ'.
' OD '. $GLOBALS['ecs']->table('template').
" WHERE theme = '$theme' A názov súboru = '" . $tmp. "' AND napíš > 0 AND remarks=''".
'PORADIE PODĽA regiónu, knižnice, sort_order';
$res = $GLOBALS['db']->getAll($sql);
$dyna_libs = array();
foreach ($res AS $row)
{
$dyna_libs[$row['region']][$row['library']][] = array(
'id' => $row['id'],
'číslo' => $row['číslo'],
'typ' => $row['typ']
);
}
return $dyna_libs;
}

set $ext = end(explode('.', $tmp));
Zmena
$extsub = explodovať('.', $tmp);
$ext = end($extsub);

Riešenie 2 (Chyba maskovania):

Alebo ak je nastavený takto: error_reporting = E_ALL | E_STRICT
Nasledujúce nastavenia sú dostupné v php.ini:
error_reporting = E_ALL | E_STRICT

To znamená, že sa zobrazujú varovania o kódovacích štandardoch.
Joomla vlastne odporúča zrušiť výstup chyby, ktorý by sa mal zmeniť na prípadne na ladenie
error_reporting = E_ALL & ~E_NOTICE

Problém bol vyriešený.




Predchádzajúci:Rozhranie QQ space information API
Budúci:Ktorý osobný blogový systém je lepší, poďme sa o tom porozprávať
Zverejnené 21. 2. 2015 21:13:21 |
Odporúča sa priamo zredukovať PHP verziu na PHP5.2.x
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com