Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

$_SERVER Değişkenleri

Konu, 'PHP' kısmında sametweb tarafından paylaşıldı.

Konu Durumu:
Daha fazla cevap için açık değil.
  1. sametweb

    sametweb Üye

    Kayıt:
    15 Ağustos 2007
    Mesajlar:
    123
    Beğenilen Mesajlar:
    0
    Meslek:
    öğrenci..
    Şehir:
    esenler / istanbul
    Merhaba Arkadaşlar.

    Nette şöyle bir kod buldum:

    PHP:
    <?php
    $value 
    current($_SERVER);
    do {
    print 
    key($_SERVER) . ": $value<br>";
    } while (
    $value next($_SERVER))
    ?>
    Bu kod $_SERVER değişkeninden gelmesi muhtemel tüm verileri çekiyor. Serverla ilgili ve kullanıcının browser'i ile ilgili bilgileri yazdırıyor. Ancak şöyle bir durum var ki, görüntüsü şöyle oluyor:

    Kod:
     HTTP_HOST: localhost
    HTTP_USER_AGENT: Mozilla/5.0 (Windows; U; Windows NT 6.0; tr; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
    HTTP_ACCEPT: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    HTTP_ACCEPT_LANGUAGE: tr-TR,tr;q=0.8,en-us;q=0.5,en;q=0.3
    HTTP_ACCEPT_ENCODING: gzip,deflate
    HTTP_ACCEPT_CHARSET: ISO-8859-9,utf-8;q=0.7,*;q=0.7
    HTTP_KEEP_ALIVE: 300
    HTTP_CONNECTION: keep-alive
    HTTP_REFERER: http://localhost/category/extended/admincp/
    PATH: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\PROGRA~1\COMMON~1\ULEADS~1\MPEG;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\MySQL\MySQL Server 5.0\bin
    SystemRoot: C:\Windows
    COMSPEC: C:\Windows\system32\cmd.exe
    PATHEXT: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
    WINDIR: C:\Windows
    Bu şekilde değil de, bir array fonksiyonu ile satır başlarındaki "HTTP_ACCEPT_LANGUAGE" gibi ifadelerin yerine istediğimiz türkçe açıklamaları yazmamız mümkün müdür?

    Yardımlarınızı bekliyorum arkadaşlar, selametle..
     
  2. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    PHP:
    <?php

        $bul 
    = array("HTTP_ACCEPT_ENCODING""HTTP_USER_AGENT""HTTP_HOST""HTTP_CONNECTION");;
        
    $degistir = array("TR_ACCEPT_ENCODING""TR_USER_AGENT""TR_HOST""TR_CONNECTION");

    foreach (
    $_SERVER as $key => $value)
    {
        
    $key str_replace($bul$degistir$key);
        echo 
    $key .":"$value ."<br>";

    }

    ?> 
    $bul ve $degistir degiskenlerini kendine gore deistirirsen istedigin cıkıyı alabilirsin.
     
  3. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    Valla aklıma bu geldi ama...
    ne kadar işine yarar bilmiyrum...
    PHP:
    <?php
    error_reporting
    (E_ALL E_NOTICE);
    $value current($_SERVER);
    do {
    $anahtar key($_SERVER);
    if(
    $anahtar == HTTP_ACCEPT_LANGUAGE) { echo" Bu Dil Kodlaması İçin : $value <br>"; }
    if(
    $anahtar == HTTP_ACCEPT_ENCODING) { echo" Bu Encoding :  $value <br>"; }
    if(
    $anahtar == HTTP_ACCEPT_CHARSET) { echo" Bu Karakter Seti : $value <br>"; }
    if(
    $anahtar == HTTP_REFERER) { echo" Bu REfeans Sayfa Belirleycisi : $value <br>"; }
    if(
    $anahtar == HTTP_REFERER) { echo" Bu dizinidir :  $value <br>"; }
    if(
    $anahtar == HTTP_HOST) { echo" Bu Host :  $value <br>"; }
    } while (
    $value next($_SERVER))
    ?> 

     
  4. sametweb

    sametweb Üye

    Kayıt:
    15 Ağustos 2007
    Mesajlar:
    123
    Beğenilen Mesajlar:
    0
    Meslek:
    öğrenci..
    Şehir:
    esenler / istanbul
    @materyalist hocam, senin verdiğin tam istediğim gibi oldu. Ayrıca kendi istediklerimi de ekleyebiliyorum.

    İkinize de teşekkürler üstadlar..
     
  5. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    türk insanı sanırım kulağını tersten tutmayı seviyor.

    işini çözdüyse problem yok.
     
  6. sametweb

    sametweb Üye

    Kayıt:
    15 Ağustos 2007
    Mesajlar:
    123
    Beğenilen Mesajlar:
    0
    Meslek:
    öğrenci..
    Şehir:
    esenler / istanbul
    Hocam yanlış anlama ama, senin verdiğin kod, görünmesini istemediğim birçok şeyi de gösteriyor. Ama @materyalist hocamın verdiği kodda istediğimi gösterip göstermemek bana kalmış..
     
  7. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    yok @sametweb yanlış anlaşılacak bişey yok. sadece garipsedim. kullanan sensin sonuçta işini görüyorsa kullan tabi ama herşeyi böyle yaparsan bir zaman sonra 300 satır surecek sey bakmıssınki 3000 satır sürmüş.

    Aşağıdaki gibi yazarsanda bul yerine yazdıklarını bulur ve değiştirir.
    PHP:
    <?php 

    $bul 
    = array("HTTP_ACCEPT_ENCODING""HTTP_USER_AGENT""HTTP_HOST""HTTP_CONNECTION");; 
    $degistir = array("TR_ACCEPT_ENCODING""TR_USER_AGENT""TR_HOST""TR_CONNECTION"); 

    foreach (
    $_SERVER as $key => $value

        if(
    in_array($key$bul))
        {
            
    $key str_replace($bul$degistir$key); 
            echo 
    $key .":"$value ."<br>"
        }


    ?>
     
  8. Grkm66

    Grkm66 Üye

    Kayıt:
    27 Haziran 2008
    Mesajlar:
    65
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar
    Şehir:
    Etiler
    :)

    Bu arada semih abimize teşekkürler...
     
  9. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    Est. Samet Kardeşim.
    Muhakkak ki daha kısa yolları vardır.
    Ama Aklıma İlk bu geldi ve yazdım. İşine yaraycaksa ne mutlu (b ve s)ana.
    Kolay Gelsin.
     
  10. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    anlayamadım arkadaşım.
     
  11. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    Saol Grkm6 Kardeşim :)
    Fazla Mütevazilikten kaçınırım bak :)
     
  12. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    bence fazla mütevazi davranmaya devam etmelisin. burası show alanı değil deyip yazıma devam edeyim.

    bazı bilmeyen arkadaşların yanlış temeller atmaması için aşağıdaki kullanımı yapmamalarını öneririm.

    PHP:
    <?php
    error_reporting
    (E_ALL E_NOTICE);
    $value current($_SERVER);
    do {
    $anahtar key($_SERVER);
    if(
    $anahtar == HTTP_ACCEPT_LANGUAGE) { echo" Bu Dil Kodlaması İçin : $value <br>"; }
    if(
    $anahtar == HTTP_ACCEPT_ENCODING) { echo" Bu Encoding :  $value <br>"; }
    if(
    $anahtar == HTTP_ACCEPT_CHARSET) { echo" Bu Karakter Seti : $value <br>"; }
    if(
    $anahtar == HTTP_REFERER) { echo" Bu REfeans Sayfa Belirleycisi : $value <br>"; }
    if(
    $anahtar == HTTP_REFERER) { echo" Bu dizinidir :  $value <br>"; }
    if(
    $anahtar == HTTP_HOST) { echo" Bu Host :  $value <br>"; }
    } while (
    $value next($_SERVER))
    ?> 
    niye bu kullanımı yapmıyacağız çünkü aşağıdakinden bir farkı olmuyacak,


    PHP:

    echo" Bu Dil Kodlaması İçin : ".$_SERVER[HTTP_ACCEPT_LANGUAGE]."<br>";
    echo
    " Bu Encoding :  ".$_SERVER[HTTP_ACCEPT_ENCODING]."<br>";
    echo
    " Bu Karakter Seti : ".$_SERVER[HTTP_ACCEPT_CHARSET]."<br>";

    // bla bla bla bla diye devam edersin . senin yaptığından bir farkı kalmaz.

    başkalarını yönlendirirken doğru örnekler vermek gerekli diye düşünüyorum. bunuda arkadası doğruya yöneltmek için yazdım.
     
  13. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    İyi yaptın emre kardeşim.
    Aynen devam et.
     
  14. sametweb

    sametweb Üye

    Kayıt:
    15 Ağustos 2007
    Mesajlar:
    123
    Beğenilen Mesajlar:
    0
    Meslek:
    öğrenci..
    Şehir:
    esenler / istanbul
    Sakin olalım üstadlar. Emre hocam anlıyorum tavsiyeni ama, @materyalist hocamın verdiğini kullandığımda ne yaptığımı iyi anlamıştım. Sonuçta o kadar iyi bilmiyorum PHP'yi ve sizler sayesinde öğrenmeye çalışıyorum. Ama şimdi senin yaptığını çalıştırdım, daha kısa olduğu için şimdi onu kullanacağım.

    Teker teker teşekkürler tekrardan..
     
  15. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    Bende yanlış öğrenmemen için yazdım zaten. Benim için hiç bir sorun teşkil etmiyor senin hangisini kullanacağın çünkü benim için değil kendin için kullanacaksın.
     
  16. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    Emre Buraya Muhalefet mi yapmaya geldin yoksa yardım etmeye mi?
    Yanlışta ne demek oluyor?
    Biz burda insanlara yanlış bilgi mi veriyoruz?
    Ben ilk aklıma geleni önerdim ve bu alıntıdan anlayacağın gibi bilgi vermişim.

    Kelimelerine dikkat ettikten sonra insanlara neyin nasıl ne şekilde doğru yada anlış olduğunu ve nasıl anlatacağını öğren.
     
  17. Raiden

    Raiden self.life.start()

    Kayıt:
    11 Ekim 2004
    Mesajlar:
    4,392
    Beğenilen Mesajlar:
    0
    Şehir:
    /home/Raiden
    sakin olalım lütfen.
     
  18. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    Hayır muhalefet olmaya gelmedim tabiki. Kelimelerine çok dikkat ettim. Sonuçta doğruyu veren bir bilgi olsada kullanım açısından yanlış bir bilgi verdin. Bu öyle bi yanlışki yeni öğrenen birisinin mantık hatası yapmasına neden oluyorsun.

    Bende bunu düzelttim ve kullanabileceği başka versiyonlar gösterttim.

    Eğer benim yazdığım kod yanlış değil diyorsan ne diyebilirimki ben sana.

    Arkadaşının gelip beni alıntılıyarak seni tebrik etmesi seninde ona karsı cevaplar vermende çabası bunlar hakkında fazla konusmak dahi istemiyorum.
     
  19. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    Arkadaşının seni tebrik etmesi dediğin insanlar benim burada saatlerimi ayırıp yardım ettiğim ve hayatımda ilk defa tanıdığım insanlar.

    Senin "arkadaşın" dediğin kişi gibi yuzlerce insan var bu forumda bana ve bnim gibi yardım eden insanlara tşk eden.
    Rahatsız Oluyorsan insanlara tşk edilmesinden git kendine siyaset kürsüsü kur diyorum.
    Ve kapatıyorum.
     
  20. Emre

    Emre Üye

    Kayıt:
    28 Eylül 2004
    Mesajlar:
    248
    Beğenilen Mesajlar:
    0
    pardon üstad özür dilerim. çok güzel kod verdin ben yanlış anlamışım. biraz yeniyimde.
     
Konu Durumu:
Daha fazla cevap için açık değil.