Öncelikli şunu belirtmek isterim ki, sunucu php sürümünü yükselttiğinde o sunucuda barınan site sahiplerine bilgi vermeyebilir genellikle de vermemektedir. Böyle bir durumda bir bakarsınız ki vbulletin tabanlı forumunuz açılmamaktadır. Sebebini hizmet aldığınız destek ekibine ilettiğinizde "bizden kaynaklı değil, php sürümü yükseltildi, vbulletin sürümünüzü upgrade yani version güncellemenizi yapın" gibi benzer cümleler kuracaklardır. Bu da manuel yapmanız gerekecektir ki işi işten işte riske atmanıza neden olacaktır.
PHP sürümü yükseltildiğinde bazı vbulletin sürümleri (Örneğin: 3.8.x) yeni PHP sürümüne göre eskiden kullanılan bazı verileri çekemeyecek veya PHP if sorgusunda bazı fonksiyonlar çalışmayacak haliyle forum açılamayacaktır. Bu durumda alınan hata ise şu şekildedir;
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 49
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 101
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 105
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 113
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 124
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 128
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 136
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 205
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/init.php on line 383
Deprecated: Assigning the return value of new by reference is deprecated in ../public_html/includes/class_core.php on line 2552
Böyle bir hata alındığında biliniz ki Sunucu PHP sürümü yükseltilmiştir. Bunu halletmeniz için çözüm kısmına gelelim.ÇÖZÜM
1- Öncelikle değişiklik yapacağımız PHP dosyalarının kodlama türünün değişmemesi için Notepad++ adındaki editör programını bilgisayarınıza indiriniz. (Sizde benzer bir program varsa bu kısmı atlıyoruz)
Notepad++ programını indirmek için: > Tıklayınız <
-
2- Herhangi bir ftp programı ile sitenizin ftpsine bağlanıp includes klasöründe mevcut olan hata veren .php dosyalarını masaüstünüze alınız. (class_core.php , init.php bazen de usercp.php vs)
-
3- Bu hata veren dosyalarınızı masaüstüne aldıktan sonra kesinlikle yedekleyiniz.
-
4- Foruma girip hata mesajındaki ilk dosyayı açıyoruz. Aynı php dosyasında birden fazla satırda hata vermiş olabilir. Bu yüzden bir tane dosyada kaç tane sorunlu satır vars o satırlara tek tek gideceğiz.Bu php dosyalarını sırayla Notepad++ gibi editörlerimizle açıyoruz.
-
5- Hatalı satırlara gittiğimizde o satırda =[COLOR=Red]&[/COLOR] şeklinde bir kısım göreceksiniz. Burda =& yerine sadece = bu işareti bırakıyoruz. Kaç tane satırda hata vermişse o satırlara gidip bu işlemi tek tek yapıyoruz. Tüm dosyalarda bu işlemi yapıp düzenlediğimiz php dosyalarını includes klasörüne attıp ftp programı ile yenilediğimizde foruma girildiğini göreceksiniz. Bazı sürümlerde bu işlemle forum açılmakta hiçbir sorun kalmamaktadır. Eğer ki sorununuz bu şekilde halledilmişse 6. adımı uygulamanıza gerek yoktur.
-
6. Beşinci adımı yapıp foruma girdiğinizde header gibi bölümlerde bazı php dosya hatası veya karakter problemi hatasını verirse bu sefer ise, includes klasöründeki config.php dosyasını masaüstüne indirip editörümüzle açıyoruz.
Açtığımızda;
/*======================================================================*\ || #################################################################### ||
|| # vBulletin 3.8.2 || #
bu şekilde başlamaktadır. Siz ise
ini_set(display_errors, 0);
bunu ekleyip dosyayı kaydedip, ftp yolu ile includes klasörüne atıyor ve yeniliyorsunuz. Yani şu şekilde olacaktır.
[COLOR=Red]ini_set(display_errors, 0); [/COLOR]
/*======================================================================*\ || #################################################################### ||
|| # vBulletin 3.8.2 || #
Bu sayede karakter sorunları da ortadan kalkacaktır. Php'nin yeni sürümünden yararlanıp vbulletin versionunundan vazgeçmeyerek rahatlıkla kullanabilirsiniz. Tabiki bundan sonra isterseniz gerekli sürümlere yükseltir, temanızda gerekli değişiklere gidersiniz. Böyle problemle karşılaşıp bu makaleyle sorunlarını halledenlere geçmiş olsun, okuyup bilgi alanlara da keyifli okumalar dilerim..
[COLOR=Purple]Anlatım: CesuryureK
Site: Wmaraci[/COLOR]