Buongiorno, pubblico alcuni articoli sul sito di una società sportiva dilettantistica di cui faccio parte (
http://www.asdlavenomombello.it). L'hosting del sito è presso Siteground. Da qualche giorno non riesco più ad accedere nè al sito nè alla pagina di amministrazione ed ottengo il seguente messaggio di errore:"
Fatal error: Cannot use Joomla\String\String as String because 'String' is a special class name in
/home/customer/www/asdlavenomombello.it/public_html/libraries/vendor/joomla/registry/src/Format/Json.php on line
12". Il file Json è il seguente
<?php
/**
* Part of the Joomla Framework Registry Package
*
* @copyright Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
namespace Joomla\Registry\Format;
use Joomla\Registry\AbstractRegistryFormat;
use Joomla\String\String;
/**
* JSON format handler for Registry.
*
* @since 1.0
*/
class Json extends AbstractRegistryFormat
{
/**
* Converts an object into a JSON formatted string.
*
* @param object $object Data source object.
* @param array $options Options used by the formatter.
*
* @return string JSON formatted string.
*
* @since 1.0
*/
public function objectToString($object, $options = array())
{
return String::unicode_to_utf8(json_encode($object));
}
/**
* Parse a JSON formatted string and convert it into an object.
*
* If the string is not in JSON format, this method will attempt to parse it as INI format.
*
* @param string $data JSON formatted string to convert.
* @param array $options Options used by the formatter.
*
* @return object Data object.
*
* @since 1.0
*/
public function stringToObject($data, array $options = array('processSections' => false))
{
$data = trim($data);
if ((substr($data, 0, 1) != '{') && (substr($data, -1, 1) != '}'))
{
$ini = AbstractRegistryFormat::getInstance('Ini');
$obj = $ini->stringToObject($data, $options);
}
else
{
$obj = json_decode($data);
}
return $obj;
}
}
L'errore potrebbe/dovrebbe essere dovuto "all'incompatibilità" tra le versioni di Joomla 3.4.8 e di PHP 7.4.33. Dovrei aggiornare Joomla e i passaggi che dovrei fare, a quanto ho capito, è passare prima alla versione 3.6.5 e poi a una versione 3.10.x. Da una versione 3.10.x poi dovrei aggiornare a 4.x, infine dalla 4.x alla 5.x E' corretto? devo usare qualche versione di patch particolare della 3.10.x? E delle 4.x e 5.x versioni minor specifiche? Il grosso problema che ho è che non posso fare gli aggiornamenti da Joomla poiché come detto non riesco ad accedere nè al sito nè alla pagina di amministrazione e quindi a Joomla, è possibile fare almeno i primi aggiornamenti tramite FTP e/o phpMyAdmin? In alternativa dovrei chiedere a Siteground di abbassare la veriosne di PHP per permettermi di accedere e fare gli aggiornamenti (ma a quanto ho capito non sono molto propensi a farlo), in questo caso quale versione di PHP dovrei richiedere per avere la certezza che riesca poi ad accedere? Ringrazio chi mi sarà di supporto