folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder Yeni Bir Php Session Vakası



Yeni Bir Php Session Vakası

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    overbite
    overbite's avatar
    Kayıt Tarihi: 13/Ağustos/2011
    Erkek

    başmadan önce forumda session kelimesi geçen tüm konuları okuduğumu bildirir herkese selam ederim.

    minecraft sunucusundaki lag beni php ile bir şeyler yapmaya itti ve yapmaya çalıştığım panele session eklerken $_SESSION['auth']="ok"; ile kaydettiğim değer, aynı sayfa içinde kullanıldığında çalışıyor fakat başka sayfaya geçtiğimde session'daki değer yok!

    örneğin deneme.php dosyasının içeriği;

    <?
    ob_start();
    session_start();
    $_SESSION['deneme'] = "ok";
    echo "$_SESSION['deneme']";
    ob_end_flush();
    ?>

    kodu ekrana ok yazıyor, fakat

    <?
    ob_start();
    session_start();
    $_SESSION['deneme'] = "ok";
    echo "<a href=\"deneme2.php\">git</a>";
    ob_end_flush();
    ?>

    kodunu çalıştırıp linke tıklayinca yes yazmasını beklerken no yazıyor. adı geçen deneme2.php dosyasının içeriği de aşağıdaki şekilde;

    <?
    ob_start();
    session_start();
    
    if(isset($_SESSION['deneme'])) {
       echo "yes";
    } else {
       echo "no";
    }
    ob_end_flush();
    ?>

    dosyaları kendi bilgisayarımda değil de netfirmsten aldığım hostta deniyorum, phpinfo() fonksiyonundaki session bölümü şu şekilde;

    session

    Session Support enabled
    Registered save handlers files user sqlite
    Registered serializer handlers php php_binary wddx

     

    DirectiveLocal ValueMaster Value
    session.auto_start Off Off
    session.bug_compat_42 Off Off
    session.bug_compat_warn On On
    session.cache_expire 180 180
    session.cache_limiter nocache nocache
    session.cookie_domain no value no value
    session.cookie_httponly Off Off
    session.cookie_lifetime 0 0
    session.cookie_path / /
    session.cookie_secure Off Off
    session.entropy_file no value no value
    session.entropy_length 0 0
    session.gc_divisor 100 100
    session.gc_maxlifetime 1440 1440
    session.gc_probability 1 1
    session.hash_bits_per_character 4 4
    session.hash_function 0 0
    session.name PHPSESSID PHPSESSID
    session.referer_check no value no value
    session.save_handler files files
    session.save_path /var/php_sessions /var/php_sessions
    session.serialize_handler php php
    session.use_cookies On On
    session.use_only_cookies Off Off
    session.use_trans_sid 1 1

    bu bölümün nasıl olması gerektiğini de bilmiyorum. yardım ediniz


    ulan bir susar mısın?
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    PHP-SEO Developer
    Erdem
    Erdem's avatar
    Kayıt Tarihi: 04/Haziran/2002
    Erkek

    ob_end_flush(); bunları kaldır. alakası yokta sen bi dene

     

    diğer sayafada isset i kaldırıp

     

    $a = $_SESSION['deneme'];

    if($a!=""){

    echo $a;

    }else{

    echo "Malesef gelmedi";

    }


    Php for SEO nun ardından Php for Gcode (CNC)
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    sniperscope
    sniperscope's avatar
    Banlanmış Üye
    Kayıt Tarihi: 14/Mart/2009
    Erkek

    ob_end_flush();

    yerine session_destroy(); yaz


    "Yer yuzunde hic bir pislik yoktur ki; altindan bir yahudi cikmasin" Adolf Hitler... "Turkiye de hicbir pislik yokturki altindan cemaat cikmasin" SniperScope "Nerede yavşak, hırsız varsa hepsi Allahçı" Fazil Say
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    overbite
    overbite's avatar
    Kayıt Tarihi: 13/Ağustos/2011
    Erkek

    yok hocam yine olmadı her türlüsünü denedim,

    aşağıdaki kodlar da kendi içinde gir çık yapıyor fakat diğer sayfaya geçince session gidiyor, kodlar:

    <?
    ob_start();
    session_start();
    
    if ( isset($_POST['islem']) ) {
    
    	if ( $_POST['islem'] == "gir" ) {
    	
    		$_SESSION['auth'] = "evet";
    		
    	} elseif ( $_POST['islem'] == "cik" ) {
    	
    		$_SESSION['auth'] = "hayir";
    		
    	}
    }
    
    if (isset($_SESSION['auth'])) {
    
    	if ($_SESSION['auth'] == "evet") {
    
    		$durum = "giris yapmis bulunmaktasiniz - session yes <br> <a href=\"deneme2.php\">diger sayfada dene</a><br>";
    		$islem = "cik";
    		
    	} elseif ($_SESSION['auth'] == "hayir") {
    	
    		$durum = "giris yapmaniz gerekiyor - session no";
    		$islem = "gir";
    		
    	} else {
    	
    		$durum = "giris yapmaniz gerekiyor - session degisik bir sey :D";
    		$islem = "gir";
    	
    	}
    	
    } else {
    
    	$durum = "session kayitli degil";
    	$islem = "gir";
    
    }
    
    echo "$durum";
    
    ?>
    
    <form action="" method="post">
    <input type="hidden" name="islem" value="<? echo "$islem"; ?>">
    <input type="submit" name="gonder" value="<? echo "$islem"; ?>">
    </form>

    http://www.kirktug.com/deneme/deneme.php


    ulan bir susar mısın?
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    sniperscope
    sniperscope's avatar
    Banlanmış Üye
    Kayıt Tarihi: 14/Mart/2009
    Erkek

    o zaman hocam soyle yap

    if (strlen($_SESSION['auth']) == 4)
    { $durum = "giris yapmis bulunmaktasiniz - session yes <br> <a href=\"deneme2.php\">diger sayfada dene</a><br>"; <br> $islem = "cik"; } elseif (strlen($_SESSION['auth']) == 5)
    {
    $durum = "giris yapmaniz gerekiyor - session no"; <br> $islem = "gir";
    } else
    { $durum = "giris yapmaniz gerekiyor - session degisik bir sey :D"; <br> $islem = "gir";
    }

    "Yer yuzunde hic bir pislik yoktur ki; altindan bir yahudi cikmasin" Adolf Hitler... "Turkiye de hicbir pislik yokturki altindan cemaat cikmasin" SniperScope "Nerede yavşak, hırsız varsa hepsi Allahçı" Fazil Say
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    overbite
    overbite's avatar
    Kayıt Tarihi: 13/Ağustos/2011
    Erkek

    malesef her türlüsünü denedim, her yerde de böyle gösteriyor fakat çalışmıyor, hostla ilgili bir şey olabilir mi?


    ulan bir susar mısın?
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cracker
    cracker's avatar
    Kayıt Tarihi: 22/Eylül/2005
    Erkek

    tanımlamaları eksik kullanmışın. deneme2.php yi aşağıdaki şekilde denermisin :

    <?

    session_start();
    if ($_SESSION['deneme'] == 'ok') {
       echo "yes session iletilmis";
    } else {
       echo "hayır session gelmedi";
    }

    ?>

     

     

    cracker tarafından 13/Ağu/12 14:03 tarihinde düzenlenmiştir

    Sana Verilecek En İyi Ceza Kısasa Kısastır, Şiddetli Bir Ceza Şehvete Esir Olanı Gaflet Uykusundan Uyandırır.
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NmC
    NmC's avatar
    Kayıt Tarihi: 23/Kasım/2008
    Erkek

    Şu ob_start() 'ı neden kullanırsınız anlamam :)) Header bilgilerinizi html basmadan önce gönderin olsun bitsin, niye eziyet çekiyonuz.

     

    There are 10 types of people in the world. Those who knows binary and those who dont...
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    overbite
    overbite's avatar
    Kayıt Tarihi: 13/Ağustos/2011
    Erkek

    @cracker hocam öyle de olmadı

    @NmC ben zaten kullanmıyordum ob_start() fakat nereye baksam sayfanın başına bu fonksiyonu yazın düzelir denmiş o yüzden ben de ekledim yine de kâr etmedi

     


    ulan bir susar mısın?
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pSkpt
    pSkpt's avatar
    Kayıt Tarihi: 10/Aralık/2010
    Erkek

    PHP sürümü kaç?


    İmza...
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    overbite
    overbite's avatar
    Kayıt Tarihi: 13/Ağustos/2011
    Erkek
    pSkpt bunu yazdı

    PHP sürümü kaç?

    PHP Version 5.2.17

    http://www.kirktug.com/deneme/phpinfo.php

     


    ulan bir susar mısın?
Toplam Hit: 2631 Toplam Mesaj: 22