OJS'nin 2.3.6 sürümünü kurduğunuzda;
Fatal error: Call to
undefined method DBConnection::getInstance() in
/home/teorivep/public_html/lib/pkp/classes/db/DBConnection.inc.php on line 232
hatası alıyorsanız, sorun setLocale fonksiyonundan kaynaklıdır. Çözüm için aşağıdaki açıklamaya bakınız:
"...ojs\classes\i18n\" yolundaki "Locale.inc.php" dosyasındaki kodlama aşağıdaki gibi olmalıdır (102 satır civarında). Eğer "Locale.inc.php" dosyasında ilgili kodlamaları bulamadıysanız “…\ojs\lib\pkp\classes\i18n” yolu altındaki “PKPLocale.inc.php” dosyasında 102
ila 112 satırlar arasına bakınız ve düzenlemeyi aşağıdaki gibi paınız.
function initialize() {
// Use defaults if locale info unspecified.
$locale = Locale::getLocale();
$sysLocale = $locale . '.' . LOCALE_ENCODING;
if (!@setlocale(LC_ALL, $sysLocale, $locale)) {
// For PHP < 4.3.0
if(setlocale(LC_ALL, $sysLocale) != $sysLocale) {
setlocale(LC_ALL, $locale);
}
}
Not: Bu açıklamanın testini yapan ve geri dönüş yaparak katkı sağlayan Hüseyin KÖRPEOĞLU, Yusuf ALPAYDIN ve Selçuk AYDEMŞR'e teşekkürler.
Bu konuyla ilgili olarak yardım isteyen Selçuk AYDEMİR'e gönderdiğim mesajın cevabını aşağıda paylaşıyorum:
Bu konuyla ilgili olarak yardım isteyen Selçuk AYDEMİR'e gönderdiğim mesajın cevabını aşağıda paylaşıyorum:
Saygıdeğer hocam,
Öncelikle yardımınız ve öneriniz için çok teşekkür ederim. Size daha önce dergimizi güncellediğimizi, Türkçe dil seçeneğini seçtiğimizde sayfanın boş göründüğünü söylemiştim ve bunun için sizden yardım istemiştim. Gönderdiğiniz maillerdeki kodları bu konuyla ilgilenen teknoloji uzmanımız inceledi ve aşağıdaki kodları silerek bu sorunu çözüme ulaştırdı.
Öncelikle yardımınız ve öneriniz için çok teşekkür ederim. Size daha önce dergimizi güncellediğimizi, Türkçe dil seçeneğini seçtiğimizde sayfanın boş göründüğünü söylemiştim ve bunun için sizden yardım istemiştim. Gönderdiğiniz maillerdeki kodları bu konuyla ilgilenen teknoloji uzmanımız inceledi ve aşağıdaki kodları silerek bu sorunu çözüme ulaştırdı.
(lib/pkp/classes/i18n/PKPLocale.inc.php)
dosyasında bulunan (satır 107-112)
if
(!@setlocale(LC_ALL, $sysLocale, $locale)) {
// For PHP < 4.3.0
if(setlocale(LC_ALL, $sysLocale) != $sysLocale) {
setlocale(LC_ALL, $locale);
}
}