• 20-08-2007, 12:19:12
    #1
    Merhabalar;

    Php 4 ile yazılmış bir site, aslında bir kontrol paneli var ve PHP5 göre update etmek istiyoruz fakat şu sorunlar mevcut;

    Dosya ve değişken sayısı fasla olduğu için değişkenleri get ile tanımlamak oldukça zor; kodları yazan kişi bile bu işlemin çok uzun süreceğini belirtiyor fakat çok fazla zamanımız yok.

    Sistem Windows sunucu üzerine yazılmış; dolayısı ile varsa ( olup olmadığını bilmiyoruz ) pathlerde küçük büyük harf sorunları felan olacak.

    Aldığımız bir bilgiye göre; php4 kodları bir kaç satır kod yazılarak php5 e göre çalıştırılabiliyormuş, şahsen aradığımda böyle bir bilgiye rastlamadım. Böyle bir şey sözkonusu mu yoksa yanlış bilgi mi verildi ?

    En mantıklı yol;
    Bu siteyi ( yani sistemi ) yine windows ve php4 ile çalışan bir sunucuya mı aktarmak gerekiyor. Bu kez de bazı güvenlik sorunlarınlarının olacağını bildiğimden bunu ne kadar güvenle ( içimiz rahat ) olarak kullanabiliriz. ?

    /* Edit Bu arada */

    php.ini dosyasında değişiklik yapılarak php5 sürümde php4 kodlarının çalıştırılabildiğini biliyorum! ancak bunu yapmamız söz konusu değil ve yukakrıda bahsettiğim kod değişikliği mesela index.php üzerinde yapılarak değişim sağlanıyormuş. Bu arada bu değişim değişkenleri get ile tanımlamadan yapılıyormuş muş muş...

    /* End of Edit */
  • 20-08-2007, 18:45:43
    #2
    Tam olarak emin değilim ama şimdi aklıma bir şey geldi index.php gibi bir sayfa üstünden diğer tüm sayfaları gösteriyorsanız. scriptin başına 1 döngü atıp tüm get-post-cookie dizisi değişkenlerini indis ismiyle aynı olan bir değişkene atayabilirsiniz.

    --
    ek:
    Kod şöyle bir şey olacak:
    Tabii GPC sırasına sen karar vereceksin.
    foreach($_GET as $key => $value ){
        $key=$value;
    }
    foreach($_POST as $key => $value ){
        $key=$value;
    }
    foreach($_COOKIE as $key => $value ){
        $key=$value;
    }
  • 20-08-2007, 20:11:21
    #3
    Üyeliği durduruldu
    register_globals açıksada aynı mantık.
  • 20-08-2007, 20:34:03
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    evet

    php.ini dosyasını acıp register_globals değerini On yapın Çalışır script yine
  • 20-08-2007, 20:54:58
    #5
    conewar adlı üyeden alıntı: mesajı görüntüle
    php.ini dosyasında değişiklik yapılarak php5 sürümde php4 kodlarının çalıştırılabildiğini biliyorum! ancak bunu yapmamız söz konusu değil
    Arkadaş böyle bir şey demiş
  • 20-08-2007, 23:11:11
    #6
    Üyeliği durduruldu
    PHP5 geriye uyumlu olduğu için hiçbişey yapmanıza gerek yok, çalışır zaten.
  • 20-08-2007, 23:15:53
    #7
    Neden kestiirip atma çabasındasınız anlamadım. Mesajı iyi okumuyor musunuz ?
    PHP 5 geriye uyumlu demek ne demek ki?
    Önceden register globals ile aldığınız değişkenleri kullanabiliyorsunuz demek mi ? arkadaş php.ini içinden değiştiremiyorum dediğine göre geriye uyumun bir anlamı kalmıyor.
    Geriye uyum dediğin fonksiyonlar açısından söylenebilir. 4'te olanlar genelde 5'te de var.
  • 21-08-2007, 00:23:36
    #8
    UndeRTakeR
    Kodları deneyeceğim, kodlar için teşekkürler...

    Lisans; S4l1h
    Arkadaşlar; sunucu üzerinde bir çok site var. Tabiki tümünü düşünmek zorundayım. Sunucuyu yada diğer siteleri tehlikeye atabilecek bir şey yapmam söz konusu değil.

    muratmoon
    Sanırım bir kaç gündür boşuna uğraşıyorum 250 mb dosya ve 15mb lik db ile . )

    Genel sorun şu;
    Bu paneli yazan kişi; gerçi sonuçta yazmış ama biraz ya bilgisi yada ilgisi kıtmış... Php3 ile yazmaya başlamış sanırım 4 le anca 5 çıktıktan sonra bitirmiş. Herhalde bıraksak 7. sürüm felan çıktığında da 5 e anca uyarlar.

    Bir modül içerisinde 1500 civarı dosya var; binlerce değişken var ama yapılan olaylar çok basit. Hatta bazı yerlerde txt dosyasına php kodu yazıp txt yi çektirmiş. Bunları yazarken suratım gülüyor fakat ağlamak istiyorum... Bu işi temizlemek te ne yazıkki benim gibi salaklara düşüyor da; hemde bir hayli sorun çıkıyor...

    Arkadaşlar konuya olan ilginize teşekkür ediyorum.
    Ne yazık ki mantıklı bir çözümü olmadığından bu işi, bir win php4x sunucu buldum dosyaları yüklüyorum şu an.

    Artık bundan sonra patronlarım yatıp kalkarken bir kaç lamerin sisteme saldırmaması için dua etsinler; ne diyebilirim ki ?
  • 21-08-2007, 02:30:48
    #9
    Üyeliği durduruldu
    UndeRTakeR adlı üyeden alıntı: mesajı görüntüle
    Neden kestiirip atma çabasındasınız anlamadım. Mesajı iyi okumuyor musunuz ?
    PHP 5 geriye uyumlu demek ne demek ki?
    Önceden register globals ile aldığınız değişkenleri kullanabiliyorsunuz demek mi ? arkadaş php.ini içinden değiştiremiyorum dediğine göre geriye uyumun bir anlamı kalmıyor.
    Geriye uyum dediğin fonksiyonlar açısından söylenebilir. 4'te olanlar genelde 5'te de var.
    Mesajı iyi okuyorum ama mesajı yazan kişi teknik bilgili bir kişi olmadığı için ona ne denmişse onu yazmış mesaja. Ne olduğu hakkında kendi de çok bişey bilmiyor, mesajdan benim anladığım o.

    Geri uyum yabancı bir terim değil, türkçe biliyorsanız ne demek olduğunu anlamanız gerekiyor.

    PHP4 üzerinde çalışan script, PHP5 ile de çalışır, sadece warning verebilir onu da zaten hosting firmaları hata gösterimini kapattığı için göremezsiniz.

    Register globals zaten PHP4 kurulumunda da kapalı geliyor o yüzden konunun onunla bi alakası yok, PHP3 olur sizin dediğiniz.

    Ayrıca;
    extract($_REQUEST);
    komutu ile register global açıkmış gibi çalışma da sağlanabilir. Ama dediğim gibi zaten bunun kullanılmamış olması gerekiyor eğer PHP4 ise...