Hata mesajına göre, $_SERVER['HTTP_ACCEPT_ENCODING'] dizini tanımlı değil ve bu nedenle substr_count() işlevi hata veriyor. Bu hatayı çözmek için, dizinin var olup olmadığını kontrol etmek üzere bir koşul ekleyebilirsiniz. İşte güncellenmiş kod:
<?php
if(strstr($_SERVER['SCRIPT_NAME'],'sitemap'))
{
function white_space_remove($data)
{
return trim($data);
}
ob_start('white_space_remove');
}
else
{
if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
ob_start("ob_gzhandler");
} else {
ob_start();
}
}
session_start();
date_default_timezone_set('Europe/Istanbul');
setlocale(LC_MONETARY, 'it_IT');
define("ROOT_FOLDER", dirname(__FILE__));
require_once(ROOT_FOLDER.'/config.php');
if(DEBUG)
{
error_reporting(-1);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
}
else
{
error_reporting(0);
}
if(DATABASE)
{
require_once(ROOT_FOLDER.'/includes/lib/db.php');
$db = new DB();
}
12.satır sonundaki } değiştirip { yaparsanız düzelecektir
Hocam, sorun çok yüksek ihtimal PHP versiyonunda. require_once komutu 5.6 PHP versiyonunda çalışıyor. Cpanel'e gir ve Select PHP version'u bul. İçine girip 5.6 versiyonu olarak değiştir ve kaydet. Sorunun düzelecek.
if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) { ob_start("ob_gzhandler"); } else { ob_start(); }Bu kodu çalıştırdığınızda nasıl çıktı veriyor bakabilir misiniz
php versiyonunu güncelledim düzeldi fakat şimidide header'da şöyle bir kod çıkıyor